私は、テキストファイルに変数の結果をドロップするために、Linuxターミナルで実行するためのPHPスクリプトを作成しています。PHPスクリプトの対話でアクセント語を入力するにはどうしたらいいですか?
すべてがうまくいっているようですが、スクリプトを実行すると端末の入力行が表示されますが、アクセント記号(´
)とá é í ó ú
などのアクセント記号を含むアクセント語は書き込めません。ターミナルで実行中のスクリプトのスクリーンショットがここに示されている
<?php
$cuantos = readline("Cuantas veces? ");
$cadena = readline("Escriba el Texto: ");
$separar = readline("Incluir separadores? ");
$separar = strtoupper($separar);
$archivar = "";
for ($x = 1; $x <= $cuantos; $x++) {
if ($separar=="S") { $archivar = $archivar . "Texto ".$x."\n";}
if ($separar=="S") { $archivar = $archivar . "----------------------------------\n";}
echo $archivar = $archivar . $cadena\n;
if ($separar=="S") { $archivar = $archivar . "==================================\n";}
}
file_put_contents('textos.txt', $archivar);
?>
:
ことに注意してください。ここ
は、コードの一部は、私は、ユーザー入力を受け入れるために使用していますテキストはEste texto debería tener acentos pero en la terminal no está aceptando ningún caracter con tilde.
となるはずですが、テキストにはアクセントが表示されません。
readline
にアクセントを受け入れさせるために、すでに<?php header("Content-Type: text/html; charset=utf-8"); ?>
とその他の文字を使用しようとしました。私も変更しようとしましたphp.ini
デフォルトの文字セットとこれまでのところ成功しません。このスクリーンショットで見られるように
私は問題がなく、端末でアクセント文字を書くことができます。
を、運がまだ提案されているようmb_internal_encoding("UTF-8");
を挿入した後。
おそらく、何かが私の端末と間違っているのですが、それは私がこれがtty端末上で動作し、またはべきではないと思う作ったのですか?だから私は試してみましたが、私は同じ結果を得ました。
すべてのヘルプは高く評価されます。
はあなたがシェル自体にそれらの文字を書くことができますか? – purrogrammer
はいできます。すべてのアクセントレターは問題のない端末に表示されます。最近追加したスクリーンショットをご覧ください。ありがとうございました。 –
'mb_internal_encoding(" UTF-8 ");' – purrogrammer