/    Sign up×
Community /Pin to ProfileBookmark

Heredoc Variable Problem

[CODE]
$foo=”xyz”;

$data = <<<EOD

Hello $foo world.<br>

EOD;

$foo=”aaa”;echo($data);
$foo=”bbb”;echo($data);
$foo=”ccc”;echo($data);
[/CODE]

I expect the PHP code above to produce this…

Hello aaa world.
Hello bbb world.
Hello ccc world.

…but it is unexpectedly producing this…

Hello xyz world.
Hello xyz world.
Hello xyz world.

How can I fix this problem?

to post a comment
PHP

1 Comments(s)

Copy linkTweet thisAlerts:
@NogDogSep 06.2008 — While it may have been unexpected to you, it's exactly what I would have expected. ? One alternative:
[code=php]
$values = array('aaa', 'bbb', 'ccc');
foreach($values as $foo)
{
echo <<<END
Hello $foo world.<br />
END:
}
[/code]

Or...
[code=php]
function hello($bar)
{
echo <<<END
Hello $bar world.<br />
END;

}
$foo = 'aaa'; hello($foo);
$foo = 'bbb'; hello($foo);
[/code]
×

Success!

Help @Guezt spread the word by sharing this article on Twitter...

Tweet This
Sign in
Forgot password?
Sign in with TwitchSign in with GithubCreate Account
about: ({
version: 0.1.9 BETA 5.19,
whats_new: community page,
up_next: more Davinci•003 tasks,
coming_soon: events calendar,
social: @webDeveloperHQ
});

legal: ({
terms: of use,
privacy: policy
});
changelog: (
version: 0.1.9,
notes: added community page

version: 0.1.8,
notes: added Davinci•003

version: 0.1.7,
notes: upvote answers to bounties

version: 0.1.6,
notes: article editor refresh
)...
recent_tips: (
tipper: @AriseFacilitySolutions09,
tipped: article
amount: 1000 SATS,

tipper: @Yussuf4331,
tipped: article
amount: 1000 SATS,

tipper: @darkwebsites540,
tipped: article
amount: 10 SATS,
)...