PHP中的嵌套(多个)字符串插值
16lz
2021-01-22
If I have a variable that contains nested variables, e.g.:
如果我有一个包含嵌套变量的变量,例如:
$message = "Hello $user_name, an email was send to $user_email ...";
$user_name = 'User Name';
$user_email = 'user@email.com';
is it possible to produce an output such as:
是否有可能产生如下输出:
Hello User Name, an email was send to user@email.com ...
without calling eval()
?
没有调用eval()?
4 个解决方案
#1
You can 'define' placeholders and replace it where you need it.
您可以“定义”占位符并将其替换为您需要的位置。
$message = "Hello #user_name#, an email was send to #user_email# ...";
$user_name = 'User Name';
$user_email = 'user@email.com';
$newMessage = str_replace(array("#user_name#", "#user_email#"), array($user_name, $user_email), $message);
See str_replace for reference.
请参阅str_replace以供参考。
更多相关文章
- PHP会话变量没有转移到我登录的页面,但是会话ID是
- php变量函数,回调函数
- php中static 静态变量和普通变量的区别
- 您是否认为PHP中的错误形式是在类方法中访问超级全局变量?
- 040-PHP使用闭包函数来进行父实例的变量自增,正确示例
- 如何使用变量访问多维数组中的某些元素?
- 只有变量可以通过引用- array_walk传递。
- 如果我们通过引用传递,是不是创建了变量?
- 如果key在变量中,PHP如何从数组中获取值