Jonathan Tapicer wrote:
> Use eval, like this:
>
> eval('$str_expanded = "' . str_replace('"', '\\"', $str) . '";');
>
> The str_replace is used because you could have a " inside $str and it
> would break the string, if you are sure the $str has no " inside you
> can omit it.
>
> Jonathan
>
> On Wed, Jul 29, 2009 at 5:43 PM, Daniel Kolbo<[email protected]> wrote:
>> Hello,
>>
>> Is it possible to force a string to expand variable names after the
>> string has been set and before the variable's been defined without
>> having to do a string replace or preg_replace?
>>
>> for example,
>> <?php
>> $str = "some string and some \$var plus other stuff";
>> echo $str."<br />";
>> $var = "Variable Contents";
>> echo $str."<br />";
>> $str_expanded = $str;//would like this to expand $var into $str_expanded
>> echo $str_expanded."<br />";
>> ?>
>>
>> Thanks,
>> dK
>> `
>>
>> --
>> PHP General Mailing List (http://www.php.net/)
>> To unsubscribe, visit: http://www.php.net/unsub.php
>>
>>
>
nice!
This would allow me to have $str loaded with all kinds of variables and
not have to do a str_replace with each (assuming the quote business is cool)
Why did you have the double \\?
> eval('$str_expanded = "' . str_replace('"', '\\"', $str) . '";');
Isn't the following equivalent?
eval('$str_expanded = "' . str_replace('"', '\"', $str) . '";');
Thanks,
dK
`
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php