dty63504 2014-10-09 15:49
浏览 25
已采纳

在静态属性中不能使用静态方法? [语法错误,意外'(']

I have a Config class with:

class Config{
    [...]
    public static function url()
    {
        if(self::debug)
            return "https://localhost:44300";
        else
            return "https://www.mysite.com";
    }
    [...]
}

then a class to manage Facebook logins, where I want to define a string with the callback uri:

class Fb
{
    public static $login_redirecturi = Config::url() . "/login/";
    [...]
}

But I can't understand why it gives an error:

Parse error: syntax error, unexpected '(', expecting ',' or ';' in [...] on line 20

enter image description here

How can I do?

  • 写回答

1条回答 默认 最新

  • doulun9534 2014-10-09 15:53
    关注

    You can't call methods on property declarations.

    From the PHP docs:

    This declaration may include an initialization, but this initialization must be a constant value--that is, it must be able to be evaluated at compile time and must not depend on run-time information in order to be evaluated.

    http://php.net/manual/en/language.oop5.properties.php

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 求lingo代码和思路
  • ¥15 公交车和无人机协同运输
  • ¥15 stm32代码移植没反应
  • ¥15 matlab基于pde算法图像修复,为什么只能对示例图像有效
  • ¥100 连续两帧图像高速减法
  • ¥15 如何绘制动力学系统的相图
  • ¥15 对接wps接口实现获取元数据
  • ¥20 给自己本科IT专业毕业的妹m找个实习工作
  • ¥15 用友U8:向一个无法连接的网络尝试了一个套接字操作,如何解决?
  • ¥30 我的代码按理说完成了模型的搭建、训练、验证测试等工作(标签-网络|关键词-变化检测)