mb_strlen に関する初心者の質問
mb_strlen についての初心者の質問です。
これら 3 つの呼び出しの戻り値がよくわかりません。 。
- PHP コード
<!-- Code highlighting produced by Actipro CodeHighlighter (freeware) http://www.CodeHighlighter.com/ --> <?php echo mb_strlen("我的名字") . "<br/>"; //12 echo mb_strlen("我的名字","UTF-8") . "<br/>"; //4 echo mb_strlen("我的名字","GBK") //6 ?>
コードは l.php に保存され、ファイルエンコーディングは utf8 です
の 2 番目のエンコーディングパラメータについてmb_strlen。 PHP のマニュアルには次のように書かれています。
「エンコーディングパラメータは文字エンコーディングです。省略した場合は、内部の文字エンコーディングの値が使用されます。」
エンコーディングがどの内部文字エンコーディングを指すのか知りたいです。 、どこで設定されていますか。
また、この関数の戻り値は次のように書きます。
「文字エンコーディングencoding を持つ文字列 str の文字数を返します。マルチバイト文字は 1 としてカウントされます。」
Multi -byte文字は1としてカウントされます。
では、なぜ最初の呼び出しでは 12 が返され、2 番目の呼び出しでは実際には 6 が返されるのでしょうか? 。 よくわかりません。説明していただけると幸いです、ありがとうございます。
-----解決策--------------------------
------解決策---------
- PHP コード
echo mb_strlen("私の名前") . "<br/>"; echo mb_strlen("私の名前","UTF-8") "<br/>"; echo mb_strlen("私の名前","GBK") //6 <br><font color="#e78608">------解決策------------------</font><br> まず、ファイルのエンコーディングは utf-8 である必要があり、mb_internal_encoding は ISO-8859-1<br> に似ている必要があります。次に、utf8 の漢字は 3 バイト、gb は 2 バイトであり、mb_strlen は変換することを知っておく必要があります。マルチバイト文字は 1 としてカウントされるため、 <br><?php<br>echo mb_strlen("my name") になります。 // に従って、エンコードは指定されません。デフォルト ISO-8859- 1 計算、1 つの utf8 中国語文字は 3<br>echo mb_strlen("my name","UTF-8") "<br/>";文字は 1<br> echo mb_strlen("My name","GBK") //エンコーディングが間違っていると、GBK 内の 1 つの中国語文字は 2 としてカウントされますが、ファイルは utf8 なので、4 * 3 = 12 バイトになります/ 2 = 6 gbk 文字<br>?><div class="clear"></div>

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









1gメモリは1024MBです。 g は中国語で「ギガバイト」を意味する「GB」を表し、MB は「メガバイト」を指します。GB と MB は両方とも、コンピュータのハード ドライブ、メモリ、その他のより大容量の記憶媒体の記憶容量を示すのに一般的に使用されます。 GB と MB 間の変換レートは 1000 (1024)、つまり「1GB=1024MB」にほぼ等しくなります。

1MB のストレージ容量は、2 の 20 乗バイト、つまり 1,048,576 バイトに相当します。 MB はコンピュータの記憶単位であり、「メガ」と発音されます。1MB は 1024KB、1KB は 1024B (バイト) に等しいため、1MB は 1048576 (1024 *1024) バイトに相当します。

1g は 1024MB のメモリ容量に相当します。 g の正式名称は「GB」で、中国語で「ギガバイト」を意味します。情報測定の 10 進単位であり、コンピュータのハードドライブ、メモリ、その他の大容量記憶媒体の記憶容量を示すためによく使用されます。 GB と MB 間の変換レートは、1000 (1024)、つまり「1GB = 1024MB」にほぼ等しくなります。

Java の Character.isDefined() 関数を使用して、文字が定義された文字であるかどうかを判断します。Java プログラミングでは、文字が定義された文字であるかどうかを判断する必要がある場合があります。便宜上、Java では Character クラスの isDefined() 関数を提供しています。これは、文字が定義された文字であるかどうかを迅速に判断するのに役立ちます。この記事では、この関数の使用方法を説明し、いくつかのコード例を示します。文字クラスは Java の単一の文字を表します

Java では、Character クラスの isLetterOrDigit() 関数を使用して、文字が文字であるか数字であるかを判断します。Java プログラミングでは、文字に対して何らかの操作や判断を行う必要があることがよくあります。一般的なニーズの 1 つは、文字が文字であるか数字であるかを判断することです。 Java は、この関数の実装に役立つ Character クラスの isLetterOrDigit() 関数を提供します。 Characterクラスは、文字の操作や判定を行うためのラッパークラスです。

Java ドキュメントの解釈: Character クラスの isAlphabetic() メソッドの詳細な説明 1. 概要 Java Character クラスでは、指定された文字が英字であるかどうかを判断するために isAlphabetic() メソッドが使用されます。これはブール値を返します。true は指定された文字がアルファベット文字であることを示し、false は指定された文字がアルファベット文字ではないことを示します。この記事では、このメソッドの使用法と原理を詳細に分析し、読者の理解を助けるコード例を提供します。

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

Java の Character.isLetterOrDigit() 関数を使用して、文字が文字であるか数字であるかを判断します。Java では、文字が文字であるか数字であるかを判断する必要があることがよくあります。このプロセスを簡略化するために、Java には組み込み関数 Character.isLetterOrDigit() が用意されており、この判断を迅速に完了するのに役立ちます。 Character.isLetterOrDigit() 関数はパラメータとして文字を受け取ります
