【发布时间】:2014-06-26 01:27:58
【问题描述】:
在一个 PHP Web 项目中,classes 文件夹中有两个子文件夹,如下所示:
项目\类\应用程序
项目\类\实用程序
实用程序子文件夹中有一个名为 Cleanse 的类。这是该类中部分代码的副本:
namespace classes\utility;
class Cleanse
{
# ATTRIBUTES
protected static $_ns = __NAMESPACE__;
# METHODS
public static function escape($values)
{
return is_array($values) ?
array_map(self::$_ns.'\Cleanse::escape', $values) :
htmlentities($values, ENT_QUOTES, 'UTF-8');
}
}
我想知道是否应该将 $_ns 声明为静态。有没有更好的方法来声明这个属性,如果有,如何从这个类的函数中调用它?
【问题讨论】:
-
为什么需要 _ns 属性?直接使用
__NAMESPACE__常量。
标签: php oop namespaces array-map