Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在字符串中计算常量?_Php - Fatal编程技术网

Php 如何在字符串中计算常量?

Php 如何在字符串中计算常量?,php,Php,可能重复: 我怎样才能得到一个常量,像变量一样在字符串中求值 $foo = "like"; define('BAR', 'fish'); // None of these give me 'I like to eat fish on Tuesday.' echo "I $foo to eat BAR on Tuesday."; echo "I $foo to eat {BAR} on Tuesday."; echo 'I $foo to eat BAR on Tuesday.'; // T

可能重复:

我怎样才能得到一个常量,像变量一样在字符串中求值

$foo = "like";
define('BAR', 'fish');

// None of these give me 'I like to eat fish on Tuesday.'
echo "I $foo to eat BAR on Tuesday.";
echo "I $foo to eat {BAR} on Tuesday.";
echo 'I $foo to eat BAR on Tuesday.';

// This works but is undesirable
echo 'I $foo to eat '.BAR.' on Tuesday.';

当然没有办法。而且没有必要。

当然没有办法。就我所知,这是不可能的。在这里检查一下这个答案,如果你也不希望连接,那么它包含了有用的解决方法

据我所知,这是不可能的。在这里检查一下这个答案,如果你也不希望连接,那么它包含了有用的解决方法

我知道这样做有效的唯一方法(您可能已经知道)是:

<?php
$foo = "like";
define('BAR', 'fish');
$constants = get_defined_constants();
echo "I $foo to eat {$constants['BAR']} on Tuesday.";
?>

我知道这样做有效的唯一方法(您可能已经知道)是:

<?php
$foo = "like";
define('BAR', 'fish');
$constants = get_defined_constants();
echo "I $foo to eat {$constants['BAR']} on Tuesday.";
?>


不确定这是否可能,但您可以定义一个变量并使用它来替换它?不需要,但必要。振作起来。(不同的Andrew!)这已经被讨论过好几次了,只是措辞有点不同(这就是为什么你在询问时没有看到它)。不确定这是否可能,但你可以定义一个变量并用它来替换它?不需要,但必要。振作起来。(不同的安德鲁!)这已经被讨论了好几次了,只是措辞有点不同(这就是为什么你在提问时没有看到)。-1你的答案没有解释,只是判断。@安德鲁你的问题也没有解释。只是“不受欢迎的”判断;)我很惊讶,一个拥有19k销售代表的人会发布这样一个毫无用处的答案。。。事实上,在看了你的个人资料后,似乎你领先两步的做法导致了很多屈尊俯就的答案。@Juan你有没有碰巧读过这个问题?:)是的。“如何在字符串中计算常量”。我投否决票的原因是,我实际上发现,能够从{MY_TABLE_CONSTANT}中选择{MY_COLUMN}=:value}而不是到处对常量名称进行编码,这将非常有用。现在我要么要做字符串连接,这使得它很难读取,要么要把常量复制到局部变量…-1你的答案没有解释,只是判断。@Andrew你的问题也没有解释。只是“不受欢迎的”判断;)我很惊讶,一个拥有19k销售代表的人会发布这样一个毫无用处的答案。。。事实上,在看了你的个人资料后,似乎你领先两步的做法导致了很多屈尊俯就的答案。@Juan你有没有碰巧读过这个问题?:)是的。“如何在字符串中计算常量”。我投否决票的原因是,我实际上发现,能够从{MY_TABLE_CONSTANT}中选择{MY_COLUMN}=:value}而不是到处对常量名称进行编码,这将非常有用。现在我要么要做字符串连接,这使得它很难读取,要么要把常量复制到局部变量……我知道了,但是谢谢你的保证。我考虑过这个选项,但它最终降低了代码的可读性。它不仅降低了代码的可读性,而且还防止IDE检测到字符串中的无效常量。我知道,但感谢您的再次保证。我考虑过这个选项,但它最终降低了代码的可读性。它不仅降低了代码的可读性,而且还防止IDE检测到字符串中的无效常量。