php - 有什么方法可以在 PHP 命名空间中使用变量?

标签 php frameworks namespaces

有一个包含数千个文件的框架,所有文件都从硬编码开始

“命名空间的东西”

有没有办法用变量替换某些东西?

“命名空间 $SOMETHING”

最佳答案

不,您不能使用变量命名空间,原因如下:

  • “命名空间是使用命名空间关键字声明的。包含命名空间的文件必须在任何其他代码之前在文件顶部声明命名空间。” http://php.net/manual/en/language.namespaces.definition.php

    因此,您甚至不能在声明 namespace 之前声明或导入变量定义。
  • 这是一个语法错误:
    namespace $bar;
    Parse error: syntax error, unexpected T_VARIABLE,
    expecting T_STRING or T_NS_SEPARATOR or '{'
    
  • “可变命名空间”听起来很糟糕,我想不出一个不接近滥用的用例
  • 你不能使用常量(如你之前的问题所建议的那样),因为语法与普通的命名空间声明没有区别
  • 关于php - 有什么方法可以在 PHP 命名空间中使用变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8543437/

    相关文章:

    php - 禁用 MySql 错误

    php - MySql 搜索忽略标点符号、符号和空格,而数据库中的数据具有特殊字符

    c++ - 使用命名空间 : Convenience vs. 命名空间污染

    c# - 如何在 web.config 文件中添加命名空间?

    php - 如何在php中使用数组键和while循环来显示mysql表数据

    php - 按级别统计结果

    支持iOS7的iOS Framework

    ruby-on-rails - 有哪些你在 Rails 中不能做但可以在其他框架中做的事情?

    extjs - 如何更改网格标题的字体大小 - ExtJS?

    Postgresql: "public."是在 Postgresql 中完全限定表名的标准方法吗?