0

私はすべてをutf-8でエンコードしています。非ASCII文字はすべて正常に機能しますが、phpのchr()関数を使用すると問題が発生します。

行は正常に機能します(±文字で)

echo '<a class="page_contents_right_cat" href="/page-contents/">Top ±300</a>';

しかし、それはそうではなく、認識されない性格を示しています。

echo '<a class="page_contents_right_cat" href="/page-contents/">Top '. chr(241) .'300</a>';

これを解決する方法は?何か助けはありますか?

4

3 に答える 3

2

&#177;またはのいずれかである同等のHTMLエンティティを使用します&plusmn;

于 2013-03-10T08:21:51.527 に答える
2

chrのマニュアルページから:

Returns a one-character string containing the character specified by ascii.

そしてそのページのコメントから:

<?php
/**
 * Return unicode char by its code
 *
 * @param int $u
 * @return char
 */
function unichr($u) {
    return mb_convert_encoding('&#' . intval($u) . ';', 'UTF-8', 'HTML-ENTITIES');
}
?>

どこかで質問する前に、実際にマニュアルを確認する必要があります。

于 2013-03-10T08:26:03.100 に答える
0

241の代わりにUTF-8文字コードを使用する必要があります。

±使用コード177の場合:http: //unicode-table.com/ru/#00B1

そしてそれをマルチバイトに変換します。

要約は次のようになります。

mb_convert_encoding(chr(177),'UTF-8')
于 2016-01-27T07:01:01.647 に答える