PHP中函数调用后在字符串中混合变量

PHP中函数调用后在字符串中混合变量,php,Php,我想在调用函数后混合变量,但不是在设置变量时 我的示例代码: 小提琴: 我尝试对$symbol:\$进行转义,但这只提供了完整的文本。并替换转义符号,使其相同 $gbye变量在语言文件中,因此,我必须保存单词($gbye),直到调用函数为止(替换它时,就好像完整字符串($greeting=“hi!{$gbye}”;)在函数中一样)。这只是一个例子 那我该怎么办 对于语言文件的使用,您可能希望使用自己的meta关键字,而不是php变量语法。这是为了确保您想做的事情与PHP想做的事情分开。这将使

我想在调用函数后混合变量,但不是在设置变量时

我的示例代码:


小提琴:

我尝试对$symbol:\$进行转义,但这只提供了完整的文本。并替换转义符号,使其相同

$gbye
变量在语言文件中,因此,我必须保存单词(
$gbye
),直到调用函数为止(替换它时,就好像完整字符串(
$greeting=“hi!{$gbye}”;
)在函数中一样)。这只是一个例子


那我该怎么办

对于语言文件的使用,您可能希望使用自己的meta关键字,而不是php变量语法。这是为了确保您想做的事情与PHP想做的事情分开。这将使您避免将来的bug和维护工作。比如说,

<?php

$greeting = "hi! #gbye#";

function greetings() {
    global $greeting;
    return str_replace("#gbye#", "goodbye!", $greeting);
}

echo greetings();

?>


我不会告诉你怎么做,因为使用@dagon几乎总是不好的做法。我同意。有办法做到这一点。但也有更简单的方法来实现相同的结果。我做了一个编辑,指定了我想要实现的目标;)<代码>$greeting=“嗨!”。$gbye只要变量在作用域内就可以正常工作“只要变量在作用域内”似乎您唯一的问题是理解,因为它没有那么容易。。。
$gbye
变量在语言文件中,因此,我必须保存单词(
$gbye
),直到调用函数为止(替换它时,就好像完整字符串(
$greeting=“hi!{$gbye}”;
)在函数中一样)。这只是一个例子
<?php

$greeting = "hi! #gbye#";

function greetings() {
    global $greeting;
    return str_replace("#gbye#", "goodbye!", $greeting);
}

echo greetings();

?>