当前位置: 首页 > 知识库问答 >
问题:

为什么我不能使用get\u cfg\u var()为实例变量[duplicate]指定自定义设置值

轩辕翰
2023-03-14

可能重复:
分析错误:语法错误,中出现意外的“(”,应为“,”或“;”

我正在做以下工作:

<?php
class JConfig {
    public $var = get_cfg_var('mySetting');
}
?>

如果我这样做,我会收到一个编译错误,上面说:

语法错误,意外'(',期待','或';'

如果我在类外执行echoget_cfg_var('mySet'),它工作得很好。
如果我将get_cfg_var('mySet')分配给局部变量,它工作得很好。

有人知道为什么我不能将其分配给实例变量吗?

共有1个答案

阎弘雅
2023-03-14

文件中:

[Property]声明可能包括初始化,但此初始化必须是一个常量值——也就是说,它必须能够在编译时进行计算,并且不能依赖运行时信息进行计算。

您需要从类构造函数或代码中的其他地方初始化该值。

 类似资料:
  • 假设我有一个名为的JPA实体类用于存储照片。我还有另一个名为的非实体类来保存这些计数信息,如、和。现在,如果在实体类中添加一个实例变量()来保存这些状态信息,则会显示以下错误消息: 基本属性只能是以下类型:Java基本类型、基本类型包装器、字符串、Java。数学BigInteger,java。数学BigDecimal,java。util。日期,爪哇。util。日历,java。sql。日期,爪哇。s

  • 我在Ubuntu中安装JDK有困难,我不能让它工作。谁能让我知道我做错了什么? 1-我从Oracle的网站下载了jdk-6u35-linux-i586.bin 2-我将下载的文件移到了家里/ 3-我使用chmod+x jdk-6u35-linux-i586.bin将其转换为可执行文件 4-我使用sudo./jdk1.6.0_35执行它 5-我使用mv jdk1.6.0_35//usr/local/

  • 问题内容: 全局变量在Python中如何工作?我知道全局变量是有害的,我只是在做实验。 这在python中不起作用: 我收到一个错误: 我究竟做错了什么? 问题答案: 您需要声明: 在Python中, 您分配的 变量默认情况下成为局部变量。您需要使用将它们声明为全局变量。另一方面,您 引用但未分配的 变量不会自动成为局部变量。这些变量指的是封闭范围内最接近的变量。 Python 3.x引入了类似于

  • 我有财产课: 还有一种方法: 在类的构造函数我有: 为什么当我从object按键调用函数时。我收到一条未定义的消息,为什么变量在内部不可用:

  • 我正在尝试为Xamarin.Forms创建一个自定义的ButtonRenderer。下面是一个简单的测试,我一直在尝试根据一些教程组合起来,但我似乎可以使它工作。

  • 我的mavensettings.xml如下,如你所见,没有超文本传输协议repository url,所有repository url都是以https开头的。 当我执行 gradle 构建时,它说我使用不安全的协议。事实上,我从来没有在我的专家设置中使用过http协议.xml。我们可以看到所有存储库 URL 都以“https://”开头。任何人都可以给我一些建议吗? 我的gradle版本是7.4部