2010-05-30 8 views
0

J'utilise un simple script sur ma page Web PHP pour décoder et afficher du JSON sous forme de texte. Cependant, quoi que j'essaie, je ne peux pas l'obtenir à wordwrap la sortie.Ajout de wordwrap au texte json décodé

$file = file_get_contents('sample.txt'); 
$out = (json_decode($file)); 
echo $out->mainText; 

Comment puis-je obtenir ce script wordwrap à 600 caractères sans couper les mots en deux?

Si possible, pouvez-vous me montrer tout le script s'il vous plaît pendant que j'apprends lentement.

Merci

+0

De quel type est la valeur de '$ sur -> mainText'? – Gumbo

Répondre

0

Je ne vais pas écrire le code pour vous, mais ce que vous pouvez faire est de couper le texte à 600 caractères, ce que vous faites en utilisant substr et ensuite voir si le dernier caractère est un symbole comme espace, virgule, point ou peu importe. Si ce n'est pas le cas, essayez-le en 599, puis en 598 etc.

C'est une meilleure façon d'apprendre, en l'essayant vous-même.

(ajouté) Ah j'aurais mal lu la question après avoir vu l'autre commentaire, auquel cas la fonction wordwrap que Ōedo mentionné pourrait être tout ce dont vous avez besoin ...

+0

J'ai essayé quelques centaines de façons de le faire, mais chaque fois qu'il échoue ou se termine par une sorte d'erreur de syntaxe. J'ai essayé même en utilisant des tables, mais le texte se dirige vers l'ouest ou disparaît complètement. Merci tout de même. – Gary

+0

@Gary, avant que je ne dise autre chose: Voulez-vous couper le texte à 600 caractères sans casser les mots, ou envelopper réellement avec un symbole (une nouvelle ligne ou quelque chose)? Parce que si c'est le dernier, vous devriez toujours regarder la fonction 'wordwrap' de PHP, en particulier le dernier argument appelé' $ cut' et ce qu'il fait; à savoir ce que vous voulez par défaut. http://php.net/manual/en/function.wordwrap.php – CharlesLeaf

+0

Salut Charles, Préférerait couper le texte à 600 caractères sans casser les mots. Je pense que j'ai peut-être trouvé la solution. // émisAt; //?> // mainText, 100, "
\ n"); //?> Qu'est-ce que c'est un fichier en 3 parties, émis, maintext et pic. Je réalise maintenant où je me trompais en ne lui disant pas quel fichier/texte à envelopper. – Gary