2010-11-29 19 views
1

Mes chaînes de texte se comportent très étrange lors de l'impression. Ils viennent tous de l'analyse d'un site Web avec l'aide de DOMDocuments. J'ai utilisé DOMNode::nodeValue pour obtenir les textes analysés.php chaînes non imprimables

La plupart de ma chaîne n'est pas imprimable avec printf. Au lieu de cela, j'obtiens un message d'avertissement "Warning: printf(): Too few arguments ". J'ai essayé d'utiliser var_dump sur les chaînes et elles contiennent toutes des caractères chaîne. Certains sont reconnus par var_dump comme des chaînes, mais ils ne sont pas non plus imprimables. Doit dire que je devine plutôt que var_dump les reconnaît comme des chaînes puisque la chaîne (longueur de chaîne) est imprimée avant les caractères sous-jacents. Y at-il une sorte de caractères qui pourrait provoquer ce comportement qui fait que mes chaînes sont interprétées comme quelque chose d'autre?

+0

est-ce que vous imprimez les caractères sur la console que nous essayons de les voir dans un webbrowser? – initall

Répondre

0

Si votre chaîne a quelque chose comme %d, elle attend un paramètre pour le remplacer par. Par exemple: (extrait de la php docs)

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

Essayez d'imprimer avec echo à la place.

+0

Ok, maintenant je suis gêné. :) '%' signe dans chaque chaîne. Supprimer le '%' a fait l'affaire. Je vous remercie! – user499986

0

Utilisez printf pour formater votre chaîne. Utilisez print ou echo si vous souhaitez simplement afficher une chaîne telle quelle.