2013-02-28 11 views
13

Wir haben einen kleinen PHP-Hook für unser Abrechnungssystem geschrieben, der bei Auftragserteilung ein neues Supportticket bei uns öffnet. Es funktioniert, außer dass es für die API-Funktion "Open Ticket" eine Zeichenfolge für die Nachricht verwendet, aber wir können nicht herausfinden, wie Wagenrücklauf in es eingefügt werden.Wagenrücklauf in PHP String erstellen?

habe ich

<p>, <br>, \n, \r\n, etc. 

versuchte Wie es aber nur um einfachen Text erscheint, sind alle diese nur wörtlich anstatt in Zeilenumbrüche gemacht gelesen werden.

Hat jemand irgendwelche Gedanken darüber, wie dies getan werden könnte? http://docs.whmcs.com/API:Open_Ticket

+2

Wagenrücklauf ('CR') ist nur" ". Ich denke du meinst Linienbremsen. –

+0

Carriage Return CR und New Line NL unterscheiden sich von HTML Zeilenumbrüchen. – Mahdi

+0

Ich bin nicht vertraut mit Whmcs, aber welche Art von Anführungszeichen verwenden Sie? Einzel oder Doppel? In Standard-PHP wird eine einzelne Zeichenfolge in Anführungszeichen wie ''\ n' '' \ n 'wörtlich wiedergeben. Eine doppelte Zeichenfolge in Anführungszeichen "\ n" 'analysiert' \ n' als Zeilenvorschubzeichen. –

Antwort

34

Wagenrücklauf ist "\r". Beachten Sie die Anführungszeichen!

Ich denke, Sie wollen "\r\n" BTW einen Zeilenumbruch in Ihrem Text, so wird es richtig in verschiedenen Betriebssystemen gerendert werden.

  • Mac: \ r
  • Linux/Unix: \ n
  • Fenster: \ r \ n
+0

Das war es, vielen Dank. Solch eine dumme einfache Frage :) –

+0

Ich hatte ein Problem beim Erstellen von HTML-E-Mails mit PHP. Hat sich als Problem bei der Verwendung von Angeboten herausgestellt (E-Mail-Header müssen mit "anstelle von" definiert werden) Diese Antwort hat behoben: D thanks. –

+0

Beachten Sie, dass nur Mac OS 9 (seit 2002 nicht unterstützt) und früher Mac verwenden OS X ist eine Variante von UNIX und verwendet ebenfalls \ n (0x0A) als Systemneuerzeilenzeichen (wie bei anderen Systemen gibt es immer noch spezielle Fälle, in denen es verwendet wird, z. B. das Zurücksetzen der Karatposition an den Anfang einer Zeile beim Ausgeben an ein Terminal). – Synexis

3
$postfields["message"] = "This is a sample ticket opened by the API\rwith a carriage return"; 
0

Fragment PHP (in Konsole Cloud9):

echo "\n"; 
echo "1: first_srt=1\nsecnd_srt=2\n"; 
echo "\n"; 
echo '2: first_srt=1\nsecnd_srt=2\n'; 
echo "\n"; 
echo "==============\n"; 
echo "\n"; 

resultierende Ausgabe:

1: first_srt=1 
    secnd_srt=2 

    2: first_srt=1\nsecnd_srt=2\n 
    ============== 

Unterschied zwischen 1 und 2: " gegen "