2017-08-20 1 views
-1

Ich erzeuge eine Zeichenfolge für Platzhalter dynamisch über PHP Echo-Funktion & Wenn ich keine Anführungszeichen um PHP-Tags setzen die Ausgabe nimmt nur das erste Wort der Zeichenfolge. Warum?Warum muss die Ausgabe von echo separat in Anführungszeichen für die Platzhalterzeichenfolge im Eingabefeld eingegeben werden?

  1. placeholder=<?php echo "Hello World"?>
    Es gibt nur Hallo im Eingabefeld
  2. placeholder="<?php echo "Hello World"?>" (Hinweis Anführungszeichen um PHP-Tags)
    Es gibt Hallo Welt in Eingabefeld.

Gleiches geschieht auch für Wert Attribut des Eingabefeldes.

+0

Nun ich denke 'Platzhalter =" "' Dies wird Fehler zurückgeben. Weil Sie nicht entkommen '' –

+0

Nein dies gibt keinen Fehler. Wie @MistryOfChaps auch unten gesagt, die Ausgabe von Echo enthält keine Anführungszeichen –

+0

Ich spreche über PHP-Datei. Versuchen Sie Ihr zweites Beispiel ich genau in PHP .Es wird Syntaxfehler –

Antwort

0

Dies zurückzuführen ist, wie das placeholder Attribut aufgebaut tun kann, ist.

Sie sollten dem Standard entsprechen, Ihren Wert in Anführungszeichen zu setzen (siehe this example als Nachweis).

Die Werte müssen zwischen Anführungszeichen gesetzt werden, wenn Sie Ihrem Wert Leerzeichen hinzufügen möchten.

So vorstellen, wenn Sie dies tun:

<input type="text" placeholder=<?php echo "Hello World"?> > 

Sie kehren diese in der HTML-Datei:

<input type="text" placeholder=Hello World > 

Er liest 'Hallo', wie es Wert ist und dann HTML sieht 'Welt' als ein anderes Attribut. Aus diesem Grund müssen Sie Ihren Wert zwischen Anführungszeichen setzen, um anzuzeigen, dass die gesamte Zeichenfolge vom placeholder-Attribut getrennt ist.

+0

werfen So gibt Echo nicht Ausgabe als "Hallo Welt" (mit doppelten Anführungszeichen) als Ausgabe von Echo ist eine Zeichenfolge und Strings sollen zwischen doppelten Anführungszeichen sein? –

+0

@NishantGarg Wenn Sie einen String "echo" ausgeben, gibt er nur aus, was zwischen den Zitaten ist, nicht die Zitate selbst. Deshalb müssen Sie Ihr PHP-Echo mit Anführungszeichen in den HTML-Anführungszeichen kapseln (wie bei 'placeholder =" "'). Versuchen Sie, Hello World in einer separaten PHP-Datei zu wiederholen, und Sie werden sehen, dass es keine Anführungszeichen um den Text gibt. – MinistryofChaps

0

Beachten Sie, dass für den ersten Fall, der Wille Ausgang

placeholder=hello world 

Wie machen, gibt es keine Anführungszeichen, wird es das erste Wort als Wert Platzhalter betrachten (Aber es ist eine schlechte Praxis). Zweiter Fall ist gut, weil es Zitate hat

placeholder="hello world" 

Sie müssen also kümmern, wie Ihr ausgegeben.

0

für den ersten Fall placeholder=<?php echo "Hello World"?> wird es nur eine Ausgabe wie so placeholder=Hello World Und dies ist kein gültiges HTML-Format aber die zweite placeholder="<?php echo "Hello World"?>" Code eingeben ausgegeben placeholder="Hello World" , die so immer gültig ist, gehen mit dem zweiten.

Und wenn Sie nur einen String echo Sie es so, dass <?="hello world" ?>

Verwandte Themen