2010-09-15 10 views
11

J'ai une longue chaîne que je veux séparer sur plusieurs lignes pour la rendre plus facile à lire. mais je ne suis pas sûr de ce que la syntaxe estPHP: Fractionner une longue chaîne de requête sur plusieurs lignes

$xml = array('sXML' =>"<queryxml><entity>Ticket</entity><query><field>Status<expression op=\"$condition1\">$complete</expression></field><condition operator=\"AND\"><field>AccountID<expression op=\"equals\">$userid</expression></field></condition><condition operator=\"AND\"><condition><field>QueueID<expression op=\"NotEqual\">$routine</expression></field></condition><condition operator=\"OR\"><field>QueueID<expression op=\"NotEqual\">$recurring</expression></field></condition><condition operator=\"OR\"><field>QueueID<expression op=\"NotEqual\">$clientmanagement</expression></field></condition></condition></query></queryxml>"); 

Quelqu'un peut-il m'aider s'il vous plaît?

+0

Voulez-vous formater la sortie ou votre code? –

Répondre

13

juste diviser en plusieurs chaînes et les concaténer, comme ceci:

$xml = array('sXML' => "lorem" . 
"ipsum" . 
"dolor"); 

ou utilisez heredoc:

$sXML = <<<XML 
your text 
goes here 
XML; 

$xml = array('sXML' => $sXML); 
+0

remercie Raoul! shoulda connu ça! – iamjonesy

+0

bien fait merci –

+0

n'est pas là des frais généraux en concaténation? dans d'autres langues (au moins un niveau bas) il y a certainement – Petr

12

Si elle n'a pas d'importance si les sauts de ligne sont ajoutés, vous pouvez simplement écrire :

<?php 
$xml = array('sXML' => "<abc> 
<def>Asdfg</def> 
</abc>"; 
?> 
+2

Clairement la meilleure réponse. – user2672165

+1

mauvaise réponse quand un nouveau saut de ligne est important. ce sera un nouveau saut de ligne entre '' et Asdfg 'qui est d'autres circonstances ne sont pas voulues – albanx

Questions connexes