文字列の長さの問題

WBOY
リリース: 2016-06-23 13:18:22
オリジナル
876 人が閲覧しました

vardump は文字列
string(14) " 00107042012" を出力します。
取得した文字列の長さは明らかに 11 です。

返信ディスカッション (解決策)
文字列の前に 3 つの特殊文字 (+BOM) があります

<?php$str = '00107042012';$str1 = '00107042012';var_dump($str);var_dump($str1);?>
ログイン後にコピー
ログイン後にコピー

2 つの出力を見てください。


3 つの特殊文字の ASCII コード 239,187,191 は、BOM ヘッダー EF BB BF

<?phpecho '<meta http-equiv="content-type" content="text/html; charset=utf-8">';$str = '00107042012';$str1 = '00107042012';echo 'str:<br>';for($i=0,$len=strlen($str);$i<$len;$i++){    echo ord(substr($str,$i,1)).'<br>';}echo '<br>str1:<br>';for($i=0,$len=strlen($str1);$i<$len;$i++){    echo ord(substr($str1,$i,1)).'<br>';}?>
ログイン後にコピー
ログイン後にコピー


str:2391871914848494855485250484950str1:4848494855485250484950
ログイン後にコピー
ログイン後にコピー


は、プログラムを使用して削除できます。
<?php$str = '00107042012';$str = substr($str, 3);var_dump($str);?>
ログイン後にコピー
ログイン後にコピー



文字列の前に 3 つの特殊文字 (+BOM) があります

<?php$str = '00107042012';$str1 = '00107042012';var_dump($str);var_dump($str1);?>
ログイン後にコピー
ログイン後にコピー

2 つの出力を見ればわかります。


3 つの特殊文字 239,187,191 の ASCII コードは、BOM ヘッダー EF BB BF

<?phpecho '<meta http-equiv="content-type" content="text/html; charset=utf-8">';$str = '00107042012';$str1 = '00107042012';echo 'str:<br>';for($i=0,$len=strlen($str);$i<$len;$i++){    echo ord(substr($str,$i,1)).'<br>';}echo '<br>str1:<br>';for($i=0,$len=strlen($str1);$i<$len;$i++){    echo ord(substr($str1,$i,1)).'<br>';}?>
ログイン後にコピー
ログイン後にコピー


str:2391871914848494855485250484950str1:4848494855485250484950
ログイン後にコピー
ログイン後にコピー


は、プログラムを使用して削除できます。
<?php$str = '00107042012';$str = substr($str, 3);var_dump($str);?>
ログイン後にコピー
ログイン後にコピー



問題は解決しました、モデレーターさんの返信ありがとうございます〜次回に分かります、ASCII コードに変換して出力するだけです
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート