ホームページ  >  記事  >  バックエンド開発  >  varchar php は、入力が mysql の varchar フィールドの長さの範囲を超えていないと判断します。

varchar php は、入力が mysql の varchar フィールドの長さの範囲を超えていないと判断します。

WBOY
WBOYオリジナル
2016-07-29 08:45:431208ブラウズ

ただし、utf-8 エンコーディングでは、文字列 $str = "Hello!!" のように、中国語の文字の長さは 3 文字になります。 strlen 関数を使用して判断すると、長さは 11 文字になります。 varchar の長さですが、実際にはそうではありません。phpmyadmin で insert ステートメントを直接実行すると、この文字列を挿入できます。
データベースの場合、その長さは 5 ですが、PHP を使用してこの長さを取得するにはどうすればよいでしょうか? iconv_strlen() 関数を使用してください。
echo iconv_strlen($str,'utf-8');
2 番目のパラメータは現在の文字セットであるため、さまざまな文字セットに従って得られる結果は 1 つの文字の長さに基づいて計算されることに注意してください。
上記のステートメントは 5 を出力します。どうですか?
上記は、varchar PHP が入力が mysql の varchar フィールドの長さの範囲を超えていないことをどのように判断するかを、varchar の内容も含めて紹介しました。PHP チュートリアルに興味のある友人の参考になれば幸いです。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。