Ich bin mir nicht sicher, wie ich diese Frage formulieren soll, aber ich gebe ein Beispiel. $ string = 'Hey, $ name. Wie geht es Ihnen?'; Wenn ich diese Zeichenfolge posten, ändert sich $ name nicht. Wie kann ich es so machen, dass ich etwas wie + name + setzen kann, so ändert sich der Name. Ich habe versucht, es zu suchen, aber ich weiß nicht, wonach ich suchen soll, also habe ich kein Glück. es ist wahrscheinlich wirklich einfach, aber ich blende nur aus. Danke
Sie können Platzhalter und str_replace
verwenden. Oder verwenden Sie die PHP-integrierte sprintf
und verwenden Sie %s
. (Und ab v4.0.6 können Sie die Reihenfolge der Argumente ändern, wenn Sie möchten).
Und für alle, die sich wundern, habe ich verstanden, dass es Probleme gibt, die eine Zeichenfolge templatieren, nicht die integrierte Verkettung / Analyse von PHP. Ich nehme nur an, dass diese Antwort aufrecht erhalten wird, da ich immer noch nicht 100% sicher bin, dass die Absicht dieses OPs
ist Sie sollten die Zeichenfolge in doppelte Anführungszeichen setzen ( "
), wenn Sie möchten, dass Variablen erweitert werden:
Ich war schon immer ein Fan von strtr
.
Der andere Vorteil besteht darin, dass Sie verschiedene Platzhalterpräfixtypen definieren können. So macht es Drupal; @
gibt an, dass eine zu maskierende Zeichenfolge als sicher an eine Webseite ausgegeben werden kann (um Injektionsattacken zu vermeiden). Der Befehl format_string führt eine Schleife durch Ihre Parameter (z. B.% co_de) % und @name
) und wenn das erste Zeichen ein @weather
ist, dann verwendet es @
für den Wert.
Tags und Links php