ホームページ >バックエンド開発 >PHPチュートリアル >同じ文字列が等しくない問題
説明: ページから IP とポートを収集し、$ip と $duankou を収集しましたが、それらは使用できないことがわかりましたが、手動入力は使用できることがわかりました。
2 つの文字列を比較したところ、長さが異なることがわかりました。しかし、エンコーディングは同じです。これを教えてください。どうすればよいですか
現在、$b は有効、$a は無効です。 var_dump($a, $b, $en code , $encodes);
結果を投稿します
echo base64_encode(serialize(array($a, $b, $encode, $encodes)))); を実行するのが最善です。
結果を投稿してください
収集されたデータに何か空の文字が表示されていますか? ip と port trim() を試してください
一番良いのは
結果
$a="tcp://".$ip.":".$duankou;$b="tcp://77.81.105.147:7808";echo $a."<br>";echo $b."<br>"; $encode = mb_detect_encoding($a, array("ASCII","UTF-8","GB2312","GBK","BIG5")); $encodes= mb_detect_encoding($b, array("ASCII","UTF-8","GB2312","GBK","BIG5")); echo $encode."<br>"; echo $encodes."<br>"; $changdu1= strlen($a); $changdu2= strlen($b); echo $changdu1."<br>"; echo $changdu2;if($a==$b){echo "相等";}else{echo "不等";}
IP とポートを Trim() してみてください
結果は同じです
//字符tcp://77.81.105.147:7808tcp://77.81.105.147:7808//编码ASCIIASCII//长度4224//结果不等
YTo0OntpOjA7UzoyNDoidGNwOi8vNzcuODEuMTA1LjE0Nzo3ODA4IjtpOjE7Uzo0MjoidGNwOi8vPHRkPjc3LjgxLjEwNS4xNDc8L3RkPjo8dGQ+NzgwODwvdGQ+IjtpOjI7Uzo1OiJBU0NJSSI7aTozO1M6NToiQVNDSUkiO30=
理由は明白です。
実際、ブラウザで Web ページのソース コードを表示すると、それを見つけることができます
これが問題であることがわかりました、見落としていました、ありがとう