在字符串中包含常量而不连接

2022-08-30 06:27:15

在PHP中,有没有办法在不连接的情况下在字符串中包含常量?

define('MY_CONSTANT', 42);

echo "This is my constant: MY_CONSTANT";

答案 1

不。

使用字符串,PHP 无法区分字符串数据和常量标识符。这适用于PHP中的任何字符串格式,包括heredoc。

constant() 是获取常量的另一种方法,但函数调用也不能在没有串联的情况下放入字符串中。

PHP 中常量的手册


答案 2

是的,它是(以某种方式;)):

define('FOO', 'bar');

$test_string = sprintf('This is a %s test string', FOO);

这可能不是你的目标,但我认为,从技术上讲,这不是串联,而是替换,从这个假设来看,它在字符串中包含一个常量而不连接


推荐