Heim Backend-Entwicklung PHP-Tutorial PHP中的多行字符串传递给JavaScript的两种方法_PHP教程

PHP中的多行字符串传递给JavaScript的两种方法_PHP教程

Jul 13, 2016 am 10:24 AM
传递 多行字符串

PHP和JavaScript都是初学。最近有这么个需求:

比方说有一个PHP的多行字符串:

$a = <<<EOF 
thy38 
csdn 
blog 
EOF;
Nach dem Login kopieren

传递给JavaScript后要等价于:

var c='thy38\n\ 
csdn\n\ 
blog';
Nach dem Login kopieren

因为对这两门语言的理解低到不知如何Google,只好自己摸索出方法两则:

1. 将PHP先转义,然后分割,然后转JSON,然后JavaScript parse,最后用\n拼接。

var b=JSON.parse(<&#63;php echo '\''.json_encode(explode("\r\n", $a)).'\''; &#63;>).join('\n'); 
alert(b==c); 
Nach dem Login kopieren

2. 在页面上安排一个隐藏的input,然后先由php把值给它,然后JavaScript从它里面读,就实现了多行值的传递

<input type="hidden" id='testphp' value="<&#63;php echo $a&#63;>" /> 
var a=document.getElementById("testphp").value; 
var b=JSON.parse(<&#63;php echo '\''.json_encode(explode("\r\n", $a)).'\''; &#63;>).join('\n'); 
alert(a==b); 
alert(b==c); 
Nach dem Login kopieren

PS: 以上方法是在跟一个PHP加JavaScript程序员同学的讨论中逐步得出的。
写完了文章回头再想想,其实这两个很绕的方法还是源于对PHP和JavaScript的多行字符串理解不透。
理解透了也就简单了,远不用这么复杂,直接字符串替换就行:

var d=<&#63;php echo '\''.str_replace("\r\n", "\\n\\\n", $a).'\''; &#63;>; 
alert(d==c);
Nach dem Login kopieren

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/825410.htmlTechArticlePHP和JavaScript都是初学。最近有这么个需求: 比方说有一个PHP的多行字符串: $a = EOF thy38 csdn blog EOF; 传递给JavaScript后要等价于: var c='thy...
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Was sind Übermittlungsoptimierungsdateien in Windows 11 und können Sie sie löschen? Was sind Übermittlungsoptimierungsdateien in Windows 11 und können Sie sie löschen? Sep 29, 2023 pm 04:09 PM

Die Übermittlungsoptimierung ist eine Funktion, die Windows Update und Windows Store dabei unterstützt, Updates schneller auszuführen und bereitzustellen. Cache-Dateien in der Übermittlungsoptimierung sollten nach einer Weile gelöscht werden, aber für einige unserer Leser häufen sie sich immer wieder und belegen unnötigen Speicherplatz. Ist es sicher, Dateien zur Versandoptimierung zu löschen? Ja, es ist sicher, Übermittlungsoptimierungsdateien zu löschen. In diesem Artikel erfahren Sie, wie einfach das in Windows 11 ist. Obwohl es nicht empfohlen wird, Dateien zur Versandoptimierung manuell zu löschen, ist es möglich, dies automatisch zu tun. Wie lösche ich Lieferoptimierungsdateien unter Windows 11? Klicken Sie auf die Suchleiste, geben Sie Datenträgerbereinigung ein und öffnen Sie das Tool über die Ergebnisse. Wenn Sie über mehrere Laufwerke verfügen, wählen Sie das Laufwerk mit Ihrem System aus (normalerweise C:

Horizontale Verkettung mehrzeiliger Zeichenfolgen in Python Horizontale Verkettung mehrzeiliger Zeichenfolgen in Python Aug 27, 2023 pm 11:49 PM

In Python ist die String-Verkettung eine gängige Operation, die es Ihnen ermöglicht, zwei oder mehr Strings zu einem einzigen String zu kombinieren. Während die vertikale Verkettung von Zeichenfolgen (d. h. untereinander) einfach ist, erfordert die horizontale Verkettung von Zeichenfolgen (d. h. nebeneinander) einige zusätzliche Verarbeitungsschritte, insbesondere bei mehrzeiligen Zeichenfolgen. In diesem Artikel werden wir verschiedene Möglichkeiten zur seitlichen Verkettung mehrzeiliger Zeichenfolgen in Python untersuchen. Methode 1: Verwenden des Operators „+“ Der Operator „+“ kann verwendet werden, um zwei oder mehr Zeichenfolgen zu einer einzigen Zeichenfolge zu kombinieren

So verwenden Sie den Kontext, um Anforderungsparameter in Go zu übergeben So verwenden Sie den Kontext, um Anforderungsparameter in Go zu übergeben Jul 22, 2023 pm 04:43 PM

Das Kontextpaket in der Go-Sprache wird verwendet, um Anforderungskontextinformationen im Programm zu übergeben. Es kann Parameter übergeben, Anforderungen abfangen und Vorgänge zwischen Funktionen über mehrere Goroutinen hinweg abbrechen. Um das Kontextpaket in Go verwenden zu können, müssen wir zunächst das Paket „context“ importieren. Nachfolgend finden Sie ein Beispiel, das zeigt, wie das Kontextpaket zum Implementieren der Übergabe von Anforderungsparametern verwendet wird. packagemainimport("context&quot

So beheben Sie den Vue-Fehler: Requisiten können nicht zum Übergeben von Daten verwendet werden So beheben Sie den Vue-Fehler: Requisiten können nicht zum Übergeben von Daten verwendet werden Aug 17, 2023 am 10:06 AM

So beheben Sie den Vue-Fehler: Requisiten können nicht zum Übergeben von Daten verwendet werden. Vorwort: Während des Entwicklungsprozesses von Vue werden häufig Requisiten zum Übertragen von Daten zwischen übergeordneten und untergeordneten Komponenten verwendet. Manchmal kann es jedoch zu Problemen kommen, d. h. wenn Requisiten zum Übergeben von Daten verwendet werden, tritt ein Fehler auf. Dieser Artikel konzentriert sich auf die Lösung des Fehlers, dass Requisiten nicht zum Übergeben von Daten in Vue verwendet werden können. Problembeschreibung: Wenn wir in der Vue-Entwicklung Requisiten in der übergeordneten Komponente verwenden, um Daten an die untergeordnete Komponente zu übergeben, wenn

Nachrichten in Java Nachrichten in Java Aug 26, 2023 pm 10:13 PM

Einführung Message Passing ist eine Methode zur Übertragung der Kommunikation zwischen Elementen oder Threads und eine grundlegende Idee in verteilten Systemen und paralleler Programmierung. Abhängig von den spezifischen Anforderungen der Implementierung kann die Nachrichtenübertragung in Java über verschiedene Methoden und Strukturen mithilfe des Power-Source-Containers java.util.concurrent erreicht werden, der eine Reihe von Schnittstellen und Klassenbibliotheken zum Einrichten und Behandeln von Threads als aktive Sperren bereitstellt Der Synchronisationsmechanismus ist eine einzelne Methode in Java, die die Nachrichtenübermittlung implementiert, beispielsweise durch Instanzen. Beispielsweise kann die Executor-Schnittstelle sofort zum Ausführen von Aufgaben verwendet werden, während BlockingQueue-Verbindungen zum Übergeben von Anweisungen zwischen gleichzeitigen Prozessen verwendet werden können. Das Obige ist ein Flussdiagramm des gesamten Prozesses der Nachrichtenübermittlung in Java. SchnittstellentypExecu

So übergeben Sie PHP-Variablen als Referenz So übergeben Sie PHP-Variablen als Referenz Aug 26, 2023 am 09:01 AM

In PHP können Sie das kaufmännische Und-Symbol (&) verwenden, um Variablen als Referenz statt als Wert zu übergeben. Dadurch kann die ursprüngliche Variable innerhalb einer Funktion oder Methode geändert werden. Es gibt hauptsächlich zwei Möglichkeiten, PHP-Variablen als Referenz zu übergeben: Verwendung des kaufmännischen Und-Symbols Verwendung des kaufmännischen Und-Symbols in der Funktions-/Methodendeklaration Verwendung des kaufmännischen Und-Symbols in der Funktions-/Methodendeklaration Bei der Übergabe von Variablen an eine Funktion/Methode In PHP können Sie Funktion/ Das kaufmännische Und-Symbol ( &) in einer Methodendeklaration übergibt Variablen als Referenz. Hier ist die aktualisierte Erklärung: Um eine Referenzvariable mithilfe des &-Symbols in einer Funktions-/Methodendeklaration zu übergeben, müssen Sie das &-Symbol vor dem Parameternamen in die Funktions-/Methodendefinition einfügen. Dies gibt an, dass Parameter als Referenz übergeben werden sollten, was dies ermöglicht

Umgang mit verteilten Transaktionen und Problemen und Lösungen bei der Nachrichtenübermittlung in der C#-Entwicklung Umgang mit verteilten Transaktionen und Problemen und Lösungen bei der Nachrichtenübermittlung in der C#-Entwicklung Oct 10, 2023 am 11:42 AM

Umgang mit verteilten Transaktionen und Nachrichtenübermittlungsproblemen und Lösungen in der C#-Entwicklung In verteilten Systemen sind verteilte Transaktionen und Nachrichtenübermittlung häufige Probleme. Verteilte Transaktionen beziehen sich auf Transaktionen, an denen mehrere Datenbanken oder Dienste beteiligt sind, während sich Messaging auf die asynchrone Kommunikation zwischen verschiedenen Komponenten im System bezieht. In diesem Artikel wird erläutert, wie mit diesen Problemen bei der C#-Entwicklung umgegangen werden kann, und es werden konkrete Codebeispiele bereitgestellt. 1. Probleme und Lösungen bei verteilten Transaktionen Bei herkömmlichen Einzelknotentransaktionen ist die Transaktionsverarbeitungslogik in einer Datenbankoperation gekapselt. Allerdings in verteilter Form

Wie verwende ich die Übergabe von Funktionsargumenten in Go? Wie verwende ich die Übergabe von Funktionsargumenten in Go? May 11, 2023 pm 05:00 PM

Go ist eine stark typisierte Programmiersprache und ihre Funktionsparameter werden als Wert übergeben. Das bedeutet, dass Sie bei der Übergabe eines Parameters an eine Funktion tatsächlich eine Kopie des Parameterwerts erstellen und diesen Wert zur Verarbeitung an die Funktion übergeben. Daher müssen Sie bei der Verwendung der Funktionsparameterübergabe in Go auf die folgenden Punkte achten: Der Unterschied zwischen Werttypen und Referenztypen In Go sind alle Datentypen mit Ausnahme des Basisdatentyps, bei dem es sich um einen Werttyp handelt, Referenztypen. Wenn Werttypdaten als Funktionsparameter übergeben werden, wird eine Kopie des Werts kopiert und an die Funktion übergeben, während auf Typdaten verwiesen wird

See all articles