2011-01-15 8 views
0

私の前の質問とこの質問はどちらも関連しています。私の目を見てくださいprevious questionデータをシリアル化して文字列操作を行うための他の方法は見つかりませんでしたファイル特殊文字からデータを読み取る際の問題

このコンテンツから特定の文字列を取得できませんでした。 。

これらのコンテンツから特定の文字列を検索したいのですが、文字列の最初の特殊文字に達すると機能が停止します。私が特殊文字の前に見つけたものを探しているなら、正しく動作します。

文字列の最初の特殊文字に遭遇し、すぐに処理を停止すると、PHPの文字列操作関数が正しく動作しないため、正しい出力が得られません。

もともと彼らはここで私は私がdefault_charsetを変更

$file='/var/www/html/products/var/session/sess_ciktos8icvk11grtpkj3u610o3'; 
$contents=file_get_contents($file); 
$contents=htmlspecialchars($contents); 
//$contents=htmlentities($contents); 
echo $contents; 

$restData=strstr($contents,'"id";s:4:"'); 
echo $restData; 
$id=substr($restData,0,strpos($restData,'"')); 
echo $id; 

を試してみましたどのようなコードがある(^@

:"Mage_Core_Model_Message_Collection":2:{s:12:"^@*^@_messages";a:0:{}s:20:"^@*^@_lastAddedMessage";N;} 

のように見えますが、私は?

として、彼らが表示されているエコーなかったときiso-8859-1に、さらにutf-8になりますが、両方とも使用できません。

私に教えてくださいこれを解決する方法おかげさまで

答えて

2

^@と表示されるこれらの文字は、実際にはnullバイトです。彼らは適切な表示を持っていないし、表示されることも意図されていない - エンジンの保護されたプロパティの内部表現です。あなたはそれらを混乱させてはいけない。

解決方法としては、どのような種類の解決策を探しているのがうれしいです。達成しようとしている結果は何ですか?

関連する問題