使用变量调用 php 命名空间

用户7663281

我正在学习在 php 中使用命名空间,并且我试图在调用常量时在命名空间名称中放置一个变量。这是我的代码。

水果2.php

<?php
namespace fruits\red;
const redfruit = 'tomato';

水果1.php

<?php
namespace fruits;

require_once('fruits2.php');

const myconst = 'banana';

echo myconst; // displays banana

echo '<br>';

echo \fruits\red\redfruit; // displays tomato

echo '<br>';
$color = 'red';
echo \fruits\$color\redfruit; // Parse error: syntax error, unexpected '$color' (T_VARIABLE), expecting identifier (T_STRING)

我不明白如何在最后一行中调用常量。我尝试了以下但它被认为是一个简单的字符串。

echo '\fruits\\'.$color.'\\redfruit';

我很确定我应该能够做到这一点,因为在此代码的另一部分调用类时,我可以做一些非常相似的事情:

$name = '\fruits\basket\\'.$color.'\\eat';
$c = new $name(); //this works

有人知道答案吗?谢谢!

富金医学博士

使用constant关键字:

$name = constant("fruits\\$color\\redfruit");

你必须逃避斜线。此外,名称必须是完全限定的(相对于根命名空间)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

命名空间的PHP使用声明

来自分类Dev

PHP命名空间使用变量无法恢复为全局

来自分类Dev

在PHP命名空间中使用函数

来自分类Dev

命名空间,特性和在PHP中的使用

来自分类Dev

似乎无法正确使用PHP命名空间

来自分类Dev

在PHP命名空间中使用函数

来自分类Dev

试图从命名空间调用函数 - Silex PHP

来自分类Dev

PHP命名空间约定-命名空间加倍

来自分类Dev

PHP命名空间与需求

来自分类Dev

PHP命名空间类

来自分类Dev

PHP 命名空间语法

来自分类Dev

使用php使用命名空间定位XML

来自分类Dev

为类使用 PHP 命名空间但收到使用错误

来自分类Dev

简短标准命名空间的PHP 7组使用声明

来自分类Dev

PHP尝试使用命名空间函数(非类)

来自分类Dev

如何在代码中使用PHP命名空间

来自分类Dev

PHP命名空间,为什么仍使用后缀?

来自分类Dev

为什么要使用命名空间(PHP)

来自分类Dev

使用命名空间时,PHP需要文件

来自分类Dev

使用NuSoap注册命名空间的PHP类方法

来自分类Dev

使用命名空间php的spl_autoload

来自分类Dev

如何在PHP中使用命名空间

来自分类Dev

使用NuSoap注册命名空间的PHP类方法

来自分类Dev

在php中使用命名空间生成XML文档

来自分类Dev

使用命名空间 PHP 循环遍历 XML

来自分类Dev

在php中使用父类或命名空间访问继承的类

来自分类Dev

使用 PHP 中 RootElement 中的命名空间解析 XML

来自分类Dev

“使用”命名空间没有任何作用 - PHP

来自分类Dev

在成员变量中使用名称空间的PHP静态方法调用