【问题标题】:PHP replace class function with a stringPHP用字符串替换类函数
【发布时间】:2016-10-25 10:45:04
【问题描述】:

之前有很多关于这个话题的问题。还是解决不了。

有效

echo $page->omdome1_text()->value();

不起作用

$number = 1;
echo $page->omdome{'number'}_text()->value();

最后一个有什么问题?

【问题讨论】:

  • echo $page->{'omdome' . $number . '_text'}()->value();

标签: php string function class methods


【解决方案1】:

这不是在 php 中连接字符串的方法,即使您使用的不是变量而是常量字符串。

你需要类似的东西:

$number = 1;
echo $page->{"omdome{$number}_text"}()->value();

或:

$number = 1;
$method = "omdome{$number}_text";
echo $page->{$method}()->value();

【讨论】:

    【解决方案2】:

    因为不是解析变量$number,而是解析字符串“number”。

    这样做:

    $number = 1;
    echo $page->omdome{$number}_text()->value();
    

    【讨论】:

    • '$number' 仍将其作为字符串。删除单引号就可以了:)。
    • @Samir haha​​ 是的,刚刚注意到
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-11-16
    • 2016-05-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多