PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

PHPでASCIIをUTF-8エンコーディングに変換しますか?


現在のエンコーディングがASCIIであることがわかっている場合、'iconv' 関数を使用してASCIIをUTF-8に変換できます。元の文字列をパラメータとしてiconv関数に渡して、UTF-8にエンコードできます。

<?php
   $str = "ábrêcWtë";
   echo 'Original :', ("$str"), PHP_EOL;
   echo 'Plain :', iconv("UTF-8", "ISO-8859-1", $str), PHP_EOL;
?>

特殊文字を含む文字列が「str」変数に割り当てられます。これは「iconv」関数に渡され、現在使用されているエンコーディングと、変換先のエンコーディングが示されます。

出力

これにより、次の出力が生成されます-

Original :ábrêcWtë Plain :�br�cWt�

別の方法は、エンコーディングを検出し、それを適切なエンコーディングに変換することです-

$string = "ábrêcWtë";
print(mb_detect_encoding ($string));
$string = mb_convert_encoding($string, "UTF-8");
print(mb_detect_encoding ($string));

特殊文字を含む文字列値が‘string;に割り当てられます。変数。これは、ターゲットエンコーディングに変換する「mb_convert_encoding」関数に渡されます。

出力

これにより、次の出力が生成されます-

UTF-8UTF-8

  1. PHPのord()関数

    ord()関数は、文字のASCII値を返します。 構文 ord(str) パラメータ str −ASCII値を取得する文字列。 戻る ord()関数は、文字列の最初の文字のASCII値となる0〜255の整数を返します。 例 以下は、文字列の最初の文字のASCII値を返す例です- <?php    echo ord("welcome"); ?> 出力 119

  2. PHPのchr()関数

    chr()関数は特定の文字を返します。 ASCII値を文字に変換します。 構文 chr(ascii) パラメータ ASCII −ASCII値を指定する 戻る chr()関数は、渡されたASCII値の文字を返します。 以下は例です- 例 <?php $val = 50; echo chr($val); ?> 以下は出力です- 出力 2 別の例を見てみましょう- 例 <?php $val = 88; echo chr($val); ?> 以下は出力です- 出力 X