2017-07-13 11 views
-2

なぜstrlen()が正しい長さの文字列を返さないのかわかりません。実際の長さは29ですが、strlen()は41を返します。助けてください。関数strlen()が正しい長さを返さない

$str = htmlentities('<td bgcolor=#FFFFFF>2-0</td>'); 
echo strlen($str); 
+0

完了。ありがとう。 – bambostar

答えて

2

あなたの文字列のHTMLエンティティはエスケープである:

&lt;td bgcolor=#FFFFFF&gt;2-0&lt;/td&gt; 

この文字列の長さが正しくへの呼び出しによって返された40文字(いない41あなたは、あなたの質問に状態として)、ありますstrlen()

HTMLエンティティをエスケープせずに、長さは28(29ではなく)です。

echo strlen('<td bgcolor=#FFFFFF>2-0</td>'); // 28 
echo strlen(htmlentities('<td bgcolor=#FFFFFF>2-0</td>')); // 40 
+0

いいえ、ちょうどhtml_entity_decodeを使って正しい長さを得ました。とにかくあなたの助けをありがとう;)素敵な一日私の友人。 – bambostar

+0

@bambostarあなたの質問を解決するのに役立つ回答があれば、左側の緑色のチェックマークをクリックして答えを受け入れることができます。これはあなたの感謝の気持ちを示す方法であり、あなたの質問が永遠に未解決のままではないことを保証します。 – icecub

+0

すみません。私はちょうどフィードバックをしました。ありがとう – bambostar

関連する問題