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检测到字符串中的无效常量。