2010-11-29 20 views
1

私のテキスト文字列は、印刷時に非常に奇妙な動作をします。彼らはすべてDOMDocumentsの助けを借りてウェブサイトを解析してきました。私はDOMNode::nodeValueを使用して、解析されたテキストを取得しました。phpの印刷不可能な文字列

ほとんどの文字列はprintfで印刷できません。代わりに警告メッセージが表示されます"Warning: printf(): Too few arguments ". 文字列にvar_dumpを使用しようとしましたが、すべて文字列を含んでいます。 var_dumpによって文字列として認識されるものもあれば、印刷可能でないものもあります。むしろ、var_dumpは文字列(文字列の長さ)がダンプされた文字の前に出力されるので、var_dumpがそれらを文字列として認識すると推測しているはずです。 文字列が何か他のものとして解釈されるこの現象を引き起こす可能性のある文字がありますか?

+0

文字をコンソールに印刷して、ウェブブラウザで表示しようとしていますか? – initall

答えて

0

文字列に%dのようなものがある場合は、それを置き換えるパラメータが必要です。例えば:(php docsから撮影)

$format = 'There are %d monkeys in the %s'; 
printf($format, $num, $location); 

代わりechoでそれを印刷してみてください。

+0

今、私は恥ずかしいです。 :)すべての文字列に '%'記号が付いています。 '%'を削除すると、そのトリックが実行されました。ありがとうございました! – user499986

0

文字列の書式設定にはprintfを使用してください。文字列をそのまま表示する場合は、printまたはechoを使用してください。