声明以下命名空间时:
<?php
namespace Example\3000;
我得到了这个错误:
Parse error: syntax error, unexpected '3000' (T_LNUMBER), expecting identifier (T_STRING) in [...]
所以我想知道PHP中的命名空间是否可以以数字开头?
注意:不能使用特殊字符。我发现唯一有效的特殊字符是下划线(389;)。例如,如果要为版本3.0.01创建文件夹,请执行以下操作:
<?php
namespace Example\v3_0_01;
不,一定不能。它必须以字母开头。
我花了一段时间才在PHP. net的评论中找到这个。
要使用数字(例如用于版本控制),必须在字母前加上前缀,例如,如下所示:
<?php
namespace Example\V_3000;
问题内容: 尝试在自己的函数中使用名称空间时出现解析错误 问题答案: 从导入的作用域规则 use关键字必须在文件的最外部作用域(全局作用域)中或在名称空间声明中进行声明。这是因为导入是在编译时而不是在运行时完成的,因此无法进行块作用域 因此,您应该这样放置,使用应该在全局级别上指定
问题内容: 这两行之间的主要区别是什么: 和 当我使用第一行时,我得到一个错误:而且我不太确定为什么会收到此错误?第二行似乎已解决了该问题。 问题答案: 如果您使用: 这意味着ArrayObject是在当前名称空间中定义的。您可以在全局名称空间(当前作用域中未定义名称空间)中,或者在与当前作用域相同的名称空间中定义ArrayObject时,使用此语法(示例)。 如果您使用: 这意味着ArrayOb
本文向大家介绍是否有可能在PHP中获得已定义名称空间的列表,包括了是否有可能在PHP中获得已定义名称空间的列表的使用技巧和注意事项,需要的朋友参考一下 给定文件1具有命名空间ns_1,文件2具有命名空间ns_2,如果文件1和文件2包含在文件3中,则无法知道命名空间ns_1和ns_2已被加载。 唯一的方法是使用'class_exists'函数,可以使用'get_declared_classes'获取
我只是用MVVM轻型工具包编写一些培训窗口项目。当MVVM Light引用添加到项目中时,下面的资源被自动添加到app.xml中 不幸的是,它不起作用,即由于以下错误,无法构建/编译项目: 我找到了几种针对此问题的常见解决方案(例如:更改解决方案平台、清理、重建、重新启动Visual Studio等),但它们并没有改变什么。创建一个新项目也没有帮助。 有没有其他办法让它起作用?我使用Visual
问题内容: 我正在从源头解析XML文档,并且它们使用自定义名称空间。 例如。当我使用SimpleXML进行解析时,mostix:名称空间元素均未显示或不可访问。可能是一个非常简单的解决方案,但是有什么想法吗? 问题答案: 通常,人们使用children()。
问题内容: 我在命名空间和语句上遇到了一些麻烦。 我有三个文件:,和。 我正在尝试使用相对路径进行此操作,因此已将其放在所有类中: 在我的圈子课程中,我有以下内容: 如果使用这些语句,我不会出错。如果我尝试以下语句,则会得到: 致命错误:在第8行的/Users/shawn/Documents/work/sites/workspace/shape/Circle.php中找不到类’Shape \ Sh