【问题标题】:php why can you not assign something to a property when you declare it ? [duplicate]php 为什么在声明属性时不能为属性赋值? [复制]
【发布时间】:2012-07-06 10:44:30
【问题描述】:

可能重复:
declare property as object?

为什么这在php中无效

public $var1 = 'hello ' . 'world';

我知道您必须将字符串分配给方法中的属性,但我只是想知道为什么会这样?

【问题讨论】:

  • 我要求快速回答,而不是负面评论,这无济于事,这似乎是这个网站越来越多的问题。
  • 在写到这里之前,你应该真的有一个问题,试着为自己找到一个答案。您可以在许多帖子中找到这个答案,或者在 php.net die 文档上阅读。例子已经够多了,webbandet 已经贴出了正确答案。
  • @OliverBS:如果您花时间阅读链接的答案,您会发现它直接回答了问题(相关部分以粗体引用)。此外,如果这对您很重要,恕我直言,评论根本不是负面的。阅读手册会对您有所帮助。
  • 确实如此,但是我想要一个简单的答案而不是大量的链接,我还想对答案发表评论,这样我就可以更好地低估这个问题,而不必看一个旧的答案可能无法 100% 回答我的问题
  • @OliverBS:这个网站不是你的个人精灵。你想要的东西必须与对整个社区最有利的东西相平衡(重复的问题不是)。如果该答案仍然给您留下疑问,那么告诉我们您已经阅读过它但仍然不够了解 X 或 Y 是完全可以的。

标签: php oop


【解决方案1】:

由于PHP Docs:

属性是通过使用关键字publicprotectedprivate 之一定义的,然后是普通的变量声明。此声明可能包含一个初始化,但此初始化必须是一个常量值 - 也就是说,它必须能够在编译时进行评估,并且不能依赖运行时信息才能进行评估.

【讨论】:

  • 我明白了,所以基本上这意味着它不能是一个会或可能会根据输入而改变的值?
  • 非常感谢您回答这个问题而不是成为负面评论巨魔。
猜你喜欢
  • 2014-08-27
  • 2014-10-22
  • 1970-01-01
  • 2021-02-23
  • 2014-08-06
  • 2011-08-15
  • 2016-05-30
  • 2011-03-04
相关资源
最近更新 更多