我打算使用PHP创建一个小型Web应用程序。我最后一次使用PHP是在2002/2003左右的某个时间,其中代码往往是一个可怕的PHP / HTML和Javascript混合在一个文件中。我想我甚至可能一直在使用PHP3 ......
我现在想要重新学习并想知道什么是改变的,以及哪些帮助库和可能会让我从不知不觉中重新创造出来的东西。
例如,有一个“标准”MySQL库,还是我们仍然使用基本的PHP函数(作为一个附带问题,存储过程在MySQL中工作了吗?)?为了创建一个不依赖整页HTML表单帖子将数据发送回服务器等的“现代”网站,我需要知道什么。
答案 0 :(得分:10)
欢迎回来。 PHP已经变得更好了!
如果可以,从一开始就使用5.3;请注意,虽然许多网站主机尚不支持它(如果这是一个问题)。如果遇到PHP 4,就会尖叫:它不再适合生产使用。
PHP 5中的主要发展是finally proper OOP。熟悉这一点是我眼中唯一真正的强制性事项。
Several popular frameworks已经发展为你做了很多低级别的工作。 Zend Framework是一个非常高质量的代码库,可以与我个人一起使用,因为它也可以用作组件库,不会强迫它的设计原则;还有其他人。 (Here是比较网站)。
PDO绝对是低级数据库类 de jour。它具有阻止SQL注入的参数化查询并支持a number of databases。
MVC design pattern是一种非常流行的设计模式,用于构建动态网站和应用程序,并作为设计理念嵌入到大多数PHP框架中。
Class Autoloading是一个很棒的PHP 5新功能。
一个相对鲜为人知的新开发是Standard PHP Library,为日常的PHP问题带来了干净的OOP解决方案。例如DirectoryIterator允许在目录中轻松递归遍历; ArrayObject为许多(但不是全部)核心数组函数提供了一个OOP接口。
DateTime class将替换旧的UNIX时间戳。它提供了改进的功能,可以使用超过32位时间戳1970-2038范围的日期。
这是引擎盖下的一些东西。您希望至少注意到重要的客户端开发;即Ajax获取服务器端数据而不重新加载页面,并使用像jQuery这样的JavaScript框架来处理细节。你已经熟悉的CSS了。
答案 1 :(得分:0)
开始时移动到Zend框架,首先对OOP做一些好的研究。确保您将良好的术语理解为多态和继承。你必须学习的最后一件事是php模式,如单一模式和工厂模式,抽象类和接口实现。
答案 2 :(得分:0)
以下是解决方案:
使用ORM从SQL>>中抽象出来例如,有一个“标准”MySQL库,还是我们仍然使用基本的PHP函数
使用MVC框架>>辅助库和折叠存在
使用Javascript提升用户体验JS Frameworks>>建立一个“现代”的网站