php和sql类
我期待着创建一个网络应用程序使用php,mysql。我打算在课堂上写 我创建了3个类:CBaseUser、CWaiter、CBaseAuth 所以基本上,CBaseUser将是CWaiter的父类,CBaseAuth包含诸如GetPasswdLen()、CreatePasswd()和GetToken()之类的内容 所以现在我要做的是程序的其余部分,需要插入、删除、更新、登录等等 我在这里有点困惑,因为我不确定应该在哪里执行sql查询功能。我应该在CWaiter做吗php和sql类,php,mysql,oop,Php,Mysql,Oop,我期待着创建一个网络应用程序使用php,mysql。我打算在课堂上写 我创建了3个类:CBaseUser、CWaiter、CBaseAuth 所以基本上,CBaseUser将是CWaiter的父类,CBaseAuth包含诸如GetPasswdLen()、CreatePasswd()和GetToken()之类的内容 所以现在我要做的是程序的其余部分,需要插入、删除、更新、登录等等 我在这里有点困惑,因为我不确定应该在哪里执行sql查询功能。我应该在CWaiter做吗 有人能告诉我PHP中的OOP吗
有人能告诉我PHP中的OOP吗?例如创建PHP web程序的最佳实践。如果您正在执行所有OO,那么在深入研究sql事务之前,您可能需要先了解一下。db使数据库不可知系统成为可能,这意味着您可以在mysql、postgre等上运行它,而无需更改一行代码 我在这里有点困惑,因为我不确定应该在哪里执行sql查询功能。我应该在CWaiter做吗 可以,但通常认为将SQL查询保存在业务逻辑的单独位置(即单独的一组源代码文件)是一种良好的做法 “MVC”是人们经常谈论的一种模式,它涉及到将“模型”(即需要了解数据库结构的任何内容,例如所有SQL)“视图”(绘制UI的任何内容,通常意味着模板引擎)和“控制器”(所有业务逻辑,将其全部绘制在一起)的代码分离 这意味着您将拥有一组不同的类,这些类的名称为CBaseUserDB或cwaiterb(或其他任何名称),用于任何需要更新/查询数据库的内容。这是一个简单的例子,只是为了说明我的观点 分离这一点背后的想法是,SQL、模板代码和业务逻辑都相互交织在一起,可能会很混乱或难以遵循 您可能还想看看PDO,它是一种比mysql和mysqli更现代的数据库访问方式。它包含一些额外的特性,如预处理语句,但我认为主要的好处是,这意味着您的知识将更加经得起未来的考验,并且您将能够轻松地适应不同的数据库API。与前面的答案不同,我不太喜欢像pear::db这样的高级抽象,但这取决于您个人的意见。请参阅类似的问题。您确实希望避免重复结构相似的查询,但是很少有程序员知道如何在“绿地”项目中这样做