首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我需要在PHP中命名2个类的建议

问我需要在PHP中命名2个类的建议
EN

Stack Overflow用户
提问于 2011-03-16 15:11:57
回答 5查看 85关注 0票数 0

我有一个类user,它是在/update/user.php启动update.php时启动的。这个类处理数据库上与用户相关的查询,比如编辑、删除、创建等。

我正在创建一个在/src/user.php中也称为user的新类,它将在数据库上执行与用户相关的查询,但只是检索(并输出)它们。例如检索其用户id、用户组、电子邮件等。

我发现有必要将它们都命名为user,但显然在检索update.php时会有冲突。你有什么建议来命名这两个不同的类,即使它们在我的库中是独立的区域,但执行类似的操作?

使用PHP4。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-03-16 15:18:39

如果他们都有疑问,但只有一个人写,那么我建议这样做。

代码语言:javascript
复制
UserWrite
UserRead

或

代码语言:javascript
复制
UserCreate
UserAccess
票数 2
EN

Stack Overflow用户

发布于 2011-03-16 15:19:00

提供整个命名结构的替代方案,而不仅仅是建议名称。Zend Framework和其他库具有与文件在树中的位置相对应的命名结构。半虚构的例子:

代码语言:javascript
复制
Class name               Is in
-----------------------------------------------------------
Zend_Auth                /Zend/Auth.php
Zend_Auth_Adapter        /Zend/Auth/Adapter.php
Zend_Auth_Helper         /Zend/Auth/Helper.php
Zend_Auth_Adapter_HTTP   /Zend/Auth/Adapter/HTTP.php

因此,下划线是目录分隔符,名称的最后一个元素是PHP文件的名称。

这样做的主要原因是它使autoloading非常简单,但它也是按任务排序库的一种很好的方式。此外,当您在代码中的某处看到使用了某个类时,您总是可以知道它在哪个文件中,这是一个很大的优势。

在您当前的方法中,我看到的问题是"src“对该类的实际作用的描述非常不明确。也许一个更有说服力的名字(比如"tools“或"query")会更合适,或者可能是主user类,应该直接命名为"user"?

将上述示例应用于该结构可能导致

代码语言:javascript
复制
Class name                   Is in
------------------------------------------------------------
MyAppname_User_Update        /User/Update.php
MyAppname_User               /User.php

哦,还有,@Charles在他的评论中说了什么。你绝对不应该再为PHP4进行开发了。它是一个已死的版本,并且是no longer supported.

票数 2
EN

Stack Overflow用户

发布于 2011-03-16 15:17:12

我理解你的问题,但是你真的想创建两个不同的类来执行相同的操作吗?您只需在/src/user.php中创建它,很明显,您可以随心所欲地使用它。您应该以这样的方式在该类中创建方法,以便在两个问题中都使用它们。即在检索信息和更新信息时。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5322075

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档