interpolera funktionsanrop i here document

PHP

2 svar · 316 visningar · startad av adde2

Medlem sedan maj 2000144 inlägg
Trådstart#1

Hej!
Sitter och underhåller gammal php kod.

Har en funktion som heter smarttab() som returnerar en textsträng.

Har ett stort antal block med följande utseende:

echo<<<EOF 
Blabla bla bla smarttab()   bla bla
EOF;

jag vill att värdet från smarttab() ska skrivas ut, men istället skrivet texten "smarttab()" ut.

Variabler däremot interpoleras.

Är det möjligt att interpolera funktionsanrop?
Eller måste jag skriva om en massa kod?

Tack på förhand.

Medlem sedan mars 20034 471 inlägg
#2

Heredoc-kommentarer tar inte funktionsanrop. Det enda som evalueras är enkla variabler. Lösning:

$smart = smarttab();
echo<<<EOF
Blabla bla bla $smart  bla bla
EOF;
Medlem sedan maj 2000144 inlägg
#3

jag var rädd för det...

Jag var rädd för det...

Tack i alla fall.

275 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
135 ms — deklarationer (db)
0 ms — hämta statistik (cache)
138 ms — hämta tråd, inlägg och bilagor (db)
135 ms — ändringar (db)