0

我已经通过

<?php
interface UserDAOInterface {

  public function insertData($model, $uid, CDbCommand $command);
  public function getData($key, CDbCommand $command);
  public function updateData($model, $uid, CDbCommand $command);
  public function deleteData($key, CDbCommand $command);
}
?>

在每个实现类中,我自动生成了实现方法。问题是,所有CDbCommand预选赛的\前面都有一个。这代表什么,为什么会出现?

4

1 回答 1

2

在 php 5.3中引入了命名空间

命名空间类似于其他编程语言中的包。

以前的标准是_用于名称景观。这导致了类似的课程Zend_Db_Something_Really_Long_That_Was_Super_Amazing(你明白了)。

使用命名空间,您可以定义这个非常漂亮的

<?php

namespace Zend\Db\Something\Really\Long\That\Was\Super;

class Amazing{}

然后在其他脚本中使用魔法关键字use导入命名空间,然后可以Amazing用作类名

但是,如果您在命名空间中并且想要使用全局类,例如 php 接口,您需要使用\它们use的前面或在命名空间声明之后使用魔法关键字。

我建议阅读有关命名空间的文档以获取更多详细信息

于 2013-06-13T14:18:51.013 回答