php 愿望清单
这份有关PHP的推荐阅读材料清单是由IBM全球生产服务组织中的Web应用程序开发人员从各种在线资源中汇编而来的。 选择这些资源的目的是向PHP引入IT专家和架构师,提供有关开发和维护的特定信息,并帮助将该技术与IBM产品集成。
PHP是一种解释型编程语言,在开放源代码核心引擎及其扩展程序提供的环境中运行,其开发由许多公司和个人驱动。 因此,此列表描述了适用于编写PHP程序和自定义解释器环境的资源。 它链接到IBM发布的材料和其他人提供的内容。
此列表会定期更新。 请通过在下面提供您的评论来帮助我们改进它。
内容
1.概述
PHP是一种脚本语言,最常嵌入HTML文档中,并在将输出发送到Web浏览器之前在服务器上执行。 它也可以用作Web服务器环境之外的命令行工具。
通常将PHP与其他开放源代码软件一起安装以构建Web应用程序,Web应用程序是用术语“ LAMP”(代表Linux,Apache,MySQL和PHP)表示的平台,尽管也可以使用其他组件。 例如,用AIX®代替Linux®,或用DB2®代替MySQL。
-
PHP定义
- Wikipedia概述了PHP,并提供了代码示例,这些代码示例演示了基本的编程概念。 官方PHP文档
- PHP手册是有关PHP信息的主要来源。 它包含一个常见问题(FAQ)列表,安装指南,语言参考以及带有用户提供的注释的综合功能文档。
2.开始
2a。 开发环境
没有简单的文本编辑器或成熟的集成开发环境(IDE),您就无法编写PHP。 由于有数十种可供选择,因此这里是一些最受欢迎的起点。
-
Zend Studio
- Zend Studio是该公司的商业IDE,它设计了PHP引擎。 该编辑器通过代码辅助功能来突出显示语法,并从工具本身内部支持调试,源代码控制,文档和数据库连接。 编辑
- jEdit是用Java™编程语言编写的免费软件文本编辑器,因此它可以在多个平台上运行,并且可以通过插件进行扩展。 jEdit支持PHP语法高亮显示和其他功能,例如可通过PHP插件PHPParse获得的语法验证和代码导航。
2b。 部署方式
创建或部署PHP应用程序时,必须有适当的环境来运行它们。
-
Zend Core for IBM
- Zend Core for IBM是一个无缝的开箱即用,易于安装且受支持PHP开发和生产环境。 developerWorks文章“ IBM的Zend Core-PHP开发人员指南”提供了安装和使用指南,将帮助您快速启动和运行。 Zend Core for IBM常见问题解答和Zend Core for IBM市场营销文档提供了其他背景信息。
2c。 源代码控制
无论您是与团队合作还是需要保留自己文件的版本,源代码管理都是答案。
-
编写更好PHP代码的工具-具有Subversion的版本控制
- Jeff Knight和Andrew Yochum演示了如何使用Subversion管理多个项目和开发人员以及开发和生产环境
3.发展
3a。 学习PHP
有了适当的开发环境,您就可以了解PHP的核心功能并开始编写代码。
-
彻彻底底的新手
- Zend为那些不熟悉PHP的用户提供了一系列PHP 101入门教程。 “ LAMP技术简介 ”
- 本教程探讨了LAMP Web开发框架,并说明了该框架如何帮助您构建应用程序来解决常见的业务问题。 本教程首先探讨LAMP架构,然后介绍基本PHP概念。 在扎实地扎根PHP之后,本教程介绍了MySQL的支持,重点介绍了数据库概念以及如何从PHP访问MySQL。 所有这些技术都是在真实客户管理示例的上下文中讨论的。 “ PHP V5对象入门 ”
- 本文介绍了PHP V5中对象和类的基础知识,从最基础的知识到继承,面向经验丰富的面向对象的程序员以及尚未引入对象的人员。 “ 学习PHP,第1部分 ”
- 本教程是一个由三部分组成的系列文章的第1部分,该系列文章通过记录文档工作流程系统的构建,使您从最基本PHP脚本到使用数据库和从文件系统进行流传输。 查看构建PHP脚本的基础知识,包括语法,HTML表单和数据库连接。 “ 学习PHP,第2部分 ”
- 本教程是一个由三部分组成的系列文章的第2部分,该系列文章通过记录文档工作流程系统的构建,使您从最基本PHP脚本到使用数据库和从文件系统进行流处理。 在这里,文档由用户上载,并存储在Web上不可访问的位置,以供第3部分中的应用程序检索。另请参见使用DOM和SAX处理XML文件以及异常。 “ 学习PHP,第3部分 ”
- 本教程总结了一个三部分的系列文章,通过记录文档工作流程系统的构建,从最基本PHP脚本到使用数据库和从文件系统流式处理。 了解有关使用HTTP身份验证,流文件以及如何创建对象和异常的信息。
3b。 进阶PHP
一旦掌握了PHP,就可以选择增强,重构或扩展应用程序。
-
“ 高级PHP V5对象 ”
- 2005年5月,IBM developerWorks上的文章“ PHP V5对象入门 ”涵盖了足够的细节,以使读者了解并使用PHP中的类和对象的基础知识。 本文介绍了PHP V5的一些更高级的和面向设计的功能。 其中包括对象类型,这些对象类型允许将系统的组件彼此分离,从而创建可重用,可扩展和可伸缩的代码。 PHP映像功能简介
- PHP不仅限于创建HTML输出。 它也可以用于创建和处理各种图像格式的图像文件,包括GIF,PNG,JPG,WBMP和XPM。 杰夫·奈特(Jeff Knight)谈到了在GD中使用GD库和捆绑版本。 他介绍了安装和配置,图像功能本身的讨论以及相关主题,例如专利法,基本颜色模型和理论。 “ 使用PHP智能地创建图形 ”
- 学习在PHP中构建面向对象的图形层。 与使用标准PHP库中的原语构建图形相比,使用面向对象的系统可使构建复杂图形更加容易。 “ 用PHP读写XML DOM ”
- 可以使用多种技术在PHP中读写XML。 本文介绍了三种读取XML的方法:使用DOM库,使用SAX解析器和使用正则表达式。 还介绍了使用DOM和PHP文本模板编写XML。
3c。 调试和分析
查找并修复应用程序问题。
-
“ PHP程序员的调试技术 ”
- 探索各种调试PHP应用程序的方法,包括打开Apache和PHP中的错误报告,以及放置战略打印语句,以通过简单的示例PHP脚本查找更难的bug的来源。 还介绍了适用于EclipsePHPEclipse插件,这是一个具有实时语法解析功能的精巧开发环境,同时还介绍了用于PHPEclipse的DBG调试器扩展。 “ PHP性能分析 ”
- 了解如何使用高级PHP调试器(APD)来分析您PHP代码。 代码分析可帮助您确定应用程序中的瓶颈或效率低下的代码,使您可以在需要时调整代码。 高级PHP调试器
- Advanced PHP Debugger(APD)是Zend扩展,提供适用于调试和性能分析代码的跟踪以及完整的堆栈回溯。 还支持基于事件的日志记录,因此可以逐个脚本地设置不同级别的信息日志记录。 Xdebug的
- Xdebug是提供调试信息的扩展,包括完整的跟踪和功能/行指示器。 Xdebug还包括概要分析和脚本执行分析。
4.整合
4a。 IBM数据库服务器
传统上,开发人员通过PHP中的Unified ODBC功能连接到IBM数据库服务器。 IBM现在建议在构建新应用程序时,对PHP V4和PHP V5使用新的PECL ibm_db2扩展,对于PHP V5使用PDO。 您可以决定在编译PHP时可以使用哪些扩展,或者使用Zend Core for IBM为您提供预配置的选项。
-
为IBM数据服务器开发PHP应用程序
- 本红皮书描述了用于为PHP应用程序设置IBM数据服务器和Apache Web应用程序服务器的安装和配置详细信息。 包括IBM的Zend Core,Zend Studio的安装和配置,它讨论了将PHP应用程序从MySQL V5移植到DB2 UDB V8.2的过程。 “ 为网络而建 ”
- IBM与Zend Technologies的新合作关系使PHP Web开发更加容易。 本文提供了针对IBM数据库服务器PHP开发的概述,并从高层次讨论了挑战和解决方案。
-
IBM DB2通用数据库,Cloudscape和Apache Derby
- 此演示文稿提供了可用于从PHP连接到IBM数据库服务器的API的出色技术概述。 “ 用PHP开发IBM Cloudscape和DB2通用数据库应用程序 ”
- 了解如何配置IBM Cloudscape V10.0和DB2 UDB V8.2服务器以从PHP V4.x和PHP V5.x进行访问。 使用Unified ODBC扩展编写数据库应用程序。 克服了可滚动游标引起的常见性能问题,并避免了存储过程中的功能限制。 “ DB2通用数据库和PHP开发人员?绝对! ”
- Paul C. Zikopoulos引入了PHP DB2 API,并演示了Zend Core for IBM插件提供的Zend Studio中的新数据库连接功能。 “ 通过PDO将PHP连接到DB2和Cloudscape ”
- PHP V5.1设置为附带一个称为PHP数据对象(PDO)的新数据库连接层。 虽然PHP一直具有良好的数据库连接性,但PDO将PHP提升到了一个新的水平。 “ Zend Core for IBM技术路线图 ”
- Zend Core for IBM提供了一个无缝的现成PHP开发和生产环境,该环境由Zend支持并与IBM的Cloudscape和DB2 UDB数据库程序集成在一起。 该产品包括对XML和Web服务的本机支持,以支持更多采用SOA。 它为数据库驱动的应用程序提供了快速的开发和部署基础,并通过在两者之间提供一致的API,从而提供了从易于使用的轻量级Cloudscape数据库到关键任务DB2的升级路径。 “ IBM的Zend Core – PHP开发人员的导览 ”
- 您是否考虑过在Linux服务器上设置PHP V5,但没有时间学习如何做? 本文将帮助您指导使用行业内第一个包含IBM Cloudscape数据库服务器的集成PHP环境安装PHP V5环境。 与从头开始设置完整的开发和部署环境相比,使用Zend Core for IBM大大简化了安装和配置。 Zend Core for IBM还提供了常用PHP扩展和DB2客户端库,使您可以连接到DB2 UDB服务器。 Zend Technologies是PHP产品和服务的领先提供商,可提供对Zend Core的支持,但是对于想要为IBM Cloudscape或DB2 UDB构建Web应用程序的任何PHP开发人员,它都是免费下载并节省时间。 “ DB2 Express-C,对开发人员友好的替代方案 ”
- 有许多免费的关系数据库管理系统(RDBMS)选项可用。 有些是开源的,有些可以从商业供应商处免费获得。 如果您正在使用C / C ++,Java技术,.NET或PHP开发应用程序,并且正在寻找一种具有创新技术的成熟数据服务器,并且正在许多关键业务解决方案中部署不断增长的开发者社区基础,那么现在就来看看DB2 Express-C。 了解如何对所有应用程序快速使用DB2 Express-C,并查看自动化和调优方案以优化您的应用程序。
4b。 IBM Web和应用程序服务器
PHP也可以与其他IBM软件产品集成。
-
“将J2EE与PHP配对以实现通用的Web应用程序基础结构 ”
- 传统思维通常使AMP堆栈的开源技术(由Apache,MySQL和PHP组成)与Enterprise Java应用程序和IBM中间件相对。 当然,每个阵营都有适合Web服务器角色的东西,每个阵营都有业务层的东西,每个都有数据层的东西。 但是,我们不能都相处吗? Daniel Krook说,我们当然可以,他演示了如何以及何时将这些曾经被认为相互排斥的解决方案进行搭配,以发挥其相对优势并开发新的创新应用程序将是有益的。
5.扩展
PHP附带了许多内置功能,但也可以轻松扩展。 您可以利用预先编写PHP组件(PEAR),编译现有的打包C扩展(PECL)或编写自己PHP组件。
6.迁移
6a。 在PHP版本之间
PHP V5提供了许多新功能,并且在很大程度上与PHP V4向后兼容。 但是,有些重要差异可能会影响您的应用程序的行为。
-
Zend开发人员专区PHP5
- 这个Zend页面重点介绍了PHP V5的开发和新增功能。 “ 为什么用PHP 5摇滚! ”
- 了解有关升级到PHP V5的信息。 提供的概述在作者的书中有详细探讨。
6b。 到IBM数据库服务器
IBM数据库提供了许多其他供应商产品不具备的功能。
-
IBM红皮书:MySQL到DB2 UDB转换指南
- 长期以来,DB2 UDB以其技术领先地位而闻名。 这本IBM红皮书是一本信息丰富的指南,它描述了如何在Linux上将数据库系统从MySQL迁移到DB2 UDB V8.1,以及如何将应用程序转换为使用DB2 UDB代替MySQL。
7.安全性
PHP使您能够快速构建功能性应用程序。 这可能导致错误处理和输入验证不足。 在部署您的站点之前,请考虑这些常见的陷阱。
-
PHP安全联盟
- PHP安全联盟(PHPSC)由一群PHP专家组成,他们致力于促进安全PHP开发的最佳实践。 PHPSC网站包含文章, PHP安全指南以及PHP安全问题的每周摘要。 前7大PHP安全漏洞
- Pax Dickinson解决了七个常见的安全问题以及如何减轻代码中的风险。
8.社区和新闻
8a。 邮件列表
邮件列表是获取PHP安装和开发问题答案的绝佳资源。 查看档案中是否已经有答案。 如果不是, 请提出您的问题 。 许多用户组都有自己的邮件列表。
-
PHP.net上的邮件列表
- 对于那些对PHP感兴趣的人有很多列表。 该站点包括针对最终用户PHP开发中常规主题和特定主题的列表,以及一些构建PHP引擎本身的人员的列表。
8b。 新闻
PHP每天都在进步。 紧跟变化,这很重要。
-
安全重点摘要
- 保持每周更新的最新状态,这可能会影响PHP应用程序的安全性。
8c。 网志
由核心PHP引擎开发人员和PHP应用程序开发人员细阅此部分博客列表。 遵循以下趋势可以使您很好地了解即将发布PHP版本中的期望值以及最重要的开发最佳实践。
-
伊利亚·阿尔沙涅茨基(Ilia Alshanetsky)
- Ilia Alshanetsky是一位PHP演讲者,并且是书籍和文章的作者。 安迪·古特曼斯
- Andi Gutmans是Zend Engine的架构师和Zend Technologies的共同创始人。 约翰·林
- John Lim是一位PHP开发人员。 迈克·莱弗利
- Mike Lively是一名PHP开发人员。 PHPDeveloper.org
- 访问PHPDeveloper.org的官方博客。 专业PHP博客
- 有关PHP编程,Web开发,PHP倡导和最佳实践的信息,请参见此博客。 德里克·雷森斯(Derick Rethans)
- Derick Rethans是PHP的mcrypt,日期和输入过滤器扩展,错误修复以及其他贡献的开发人员。 丹·斯科特
- Dan Scott是ibm_db2和PDO_INFORMIX扩展的发布负责人,其中包括对PHP的其他贡献。 克里斯·史弗莱特
- Chris Shiflett是一位PHP顾问,发言人,书和文章作者。 SitePoint
- SitePoint是一个PHP和Web设计信息网站。 戴维·斯克拉
- David Sklar是PHP的常任作者和发言人。 Zeev Suraski
- Zeev Suraski是Zend Engine的架构师和Zend Technologies的共同创始人。 杰森汗
- Jason Sweat是一位PHP演讲者和书籍作者。 亚当·特拉滕伯格
- Adam Trachtenberg是一位PHP演讲者,并且是书籍和文章的作者。 安德烈·兹米耶夫斯基(Andrei Zmievski)
- Yahoo!的技术Yahoo的Andrei Zmievski是PHP的主要开发人员。
9.其他资源
9a。 用户群
用户组是与同行开发人员会面并定期从专家那里了解最新主题的最佳方式之一。
9b。 简报
许多在开源或特定于PHP的会议上的演讲者在线提供幻灯片。
-
伊利亚·阿尔沙涅茨基(Ilia Alshanetsky)
- 请参阅Ilia Alshanetsky的“ PHP和性能”和其他演示。 马库斯·伯格(MarcusBörger)
- 请参阅MarcusBörger的“ PHP代码营”和其他演示。 德里克·雷森斯(Derick Rethans)
- 请参阅Derick Rethans的“ RAD for PHP”和其他演示。 会谈在php.net
- 这包括使用PHP演示系统的演讲列表。
9c。 图书
有许多关于PHP的书籍。 这些是我们认为有帮助的一些。
-
高级PHP编程
- 乔治·施洛斯纳格 Apache Derby-竞赛:包括IBM Cloudscape的详细信息
- 保罗·齐科普洛斯(Paul C. 基本PHP安全性
- 克里斯·史弗莱特 学习PHP 5
- 戴维·斯克拉 PHP和MySQL Web开发
- 卢克·威灵和劳拉·汤姆森 升级到PHP 5
- 亚当·特拉滕伯格
9d。 网络广播
阅读有关PHP相关主题的高级文章。
-
使用PHP和DB2 UDB和Cloudscape构建动态数据驱动的Web应用程序
- PHP是一种开放源代码Web开发语言,是构建与XML和Web服务相关的关键业务,可伸缩Web应用程序的最快方法。
9e。 杂志
这些在书报摊或在线以PDF格式提供。
-
DB2杂志
- DB2 Magazine是面向解决方案的杂志,为IT专业人员提供了在IBM数据管理环境中成功工作所需的战略和技术信息。
翻译自: https://www.ibm.com/developerworks/opensource/library/os-php-read/index.html
php 愿望清单