【VC++开源代码栏目提醒】:网学会员在VC++开源代码频道为大家收集整理了“PHP+MySQL全能权威指南 - 编程语言“提供大家参考,希望对大家有所帮助!
准备基础知识、开发环境及配置 运行环境 视频讲解47分钟 PHP是一种流行的动态网站开发技术动态网站就是位于服务器上的一个应用程序也被称为网络应用程序。
同时PHP也是一种PHP动态网站开发所使用的程序 语言。
在几乎所有应用程序开发中用户都要接触到三个相互关联的方面PHP也不例外具体如下 开发环境——Zend Studio、PDT、Dreamweaver等。
运行环境——PHP应用程序服务器。
开发语言——PHP。
这三者之间的关系如图1-1所示。
·3· 第1章 准备基础知识、开发环境及配置运行环境 图1-1 开发环境、开发语言和运行环境之间的关系 编写 运行在 PHP
代码 PHP应用程序服务器 ·4· PPHPMySQL全能权威指南 1.1 正确认识PHP动态网站开发 PHP最早是Personal Home Page的缩写意思为个人主页这个缩写一直沿用至今。
随着PHP技术的不断充实、完善现在PHP改称为Hypertext Preprocessor即超文本预处理语言已经成为目前市场上主流的网络应用程序开发平台。
虽然PHP动态网站开发包含很多内涵但也不能摆脱最基本的三个关联方面开发环境、运行环境和开发语言。
要学习PHP动态网站开发首先要正确认识这三个方面的关系。
技巧与提示 PHP是建立交互式动态网站的一个快速、强大且稳定的Web应用程序服务器和程序语言而且是免费的。
利用PHP用户可以用最快的速度将服务器、浏览器和数据库技术相集成建立强大的、可高度扩展的Web应用程序而且PHP
代码可嵌入到 HTML
代码中。
另外使用PHP强大的扩展性用户可以在服务器端连接Java应用程序还可以与Microsoft.NET建立有效的沟通甚至更广阔的扩展从而可以建立一个强大的环境以充分利用现有的和其他技术开发的资源。
开源和跨平台的特性使得使用PHP架构能够快速、高效地开发出可移植的、跨平台的、具有强大功能的企业级Web应用程序。
1.1.1 正确认识PHP的开发工具 在进行PHP动态网站开发时使用记事本程序就可以编写PHP
代码进行PHP开发。
但是安装一个集成开发工具也被称为开发环境、创作环境、创作软件等是十分必要的。
现在大多数开发环境集成了很多用于辅助开发的功能因此它们也被称为集成开发环境Integrated Development EnvironmentIDE。
目前流行的PHP开发工具包括Zend Studio、PDTEclipse PHP Development Tools、PHPEdit和Dreamweaver。
1.1.2 正确认识PHP的运行环境 PHP是一种多用途script语言不但可以用来开发动态网站还可以用来开发桌面应用程序但尤其适合于动态网站开发。
当用于动态网站开发时PHP应用程序服务器便是PHP程序的运行环境当PHP程序
代码传递到PHP应用程序服务器时它可以执行这些
代码并将执行结果返回给Web服务器再由Web服务器传递回客户端浏览器关于这一点读者可参考2.2节。
当用于桌面应用程序开发时PHP
代码会被编译为二进制由处理器直接执行。
1.1.3 关于标准和实现 在IT产业中特别是软件产业中有两个非常重要的名词即标准和实现。
标准standard是由一个公认的机构制定和批准的文件。
它对活动或活动的结果规定了规则、导则或特殊值可供共同和反复使用以在预定领域内实现最佳的秩序效果。
·5· 第1章 准备基础知识、开发环境及配置运行环境 有一些标准具有强制力如ISO国际标准组织制定的标准必须为其成员所遵守具有法定的约束力另外一些则没有强制力但具有很大的影响力并且在很大程度上成为事实上的标准如W3C万维网联合会制定的一些标准这些标准一般被称为规范specification这些规范中最著名的就是HTTP协议它实际上已经成为一种事实上的标准。
实现implementation则是按照标准和规范作出的。
例如开发者按照HTTP协议开发出了一个浏览器程序那么就称该浏览器程序为HTTP协议的一个实现或者说该浏览器程序实现了HTTP协议。
如IE、FireFox、网景等浏览器都是HTTP协议的实现。
而一种语言可以有不同的运行环境这些不同的运行环境也可以称为这种语言的一个实现如IE、FireFox、网景等浏览器都是HTML语言的实现因为它们都是HTML网页的运行环境。
技巧与提示 有些信息技术标准不具有法定约束力所以很多厂商并不完全遵守这个标准而是部分采纳。
部分采纳主要是为了和其他厂商的产品互通。
在标准基础上做一些扩展则主要是为了实现自身的某些特殊需要。
如JavaScript、ActionScript等都是部分地遵守ECMA-262标准并且它们都在这个标准基础上扩展了自己某些特殊的功能。
目前几乎所有的厂商都会这样做。
1.2 安装和配置PHP动态网站的运行环境 运行网站的第一步是安装一个Web服务器在Windows平台下有很多Web服务器可供选择最著名的便是IISInternet Information ServiceInternet信息服务和Apache。
要运行PHP动态网站还需要安装一个PHP应用程序服务器下面就来介绍怎样安装和使用PHP应用程序服务器。
如果要在Linux平台下开发和部署PHP动态网站可以参考附录F。
1.2.1 下载和安装PHP应用程序服务器 要运行PHP动态网站就必须安装PHP应用程序服务器。
PHP应用程序服务器包含了PHP运行环境和使用PHP编写、构建、测试和部署应用程序所需的所有资源。
本书主要使用PHP 5.3.5但也会介绍PHP 6.0的一些知识所有的软件都可以从http://www. php.net上下载。
在安装PHP时可以考虑用UNIX或Linux操作系统当然也可以运行在Windows平台上考虑到Windows用户更多上手也更快所以本书使用Windows平台来介绍。
下面的网址包含了所有的PHP 5版本如图1-2所示。
http://windows.php.net/downloads/releases/archives/ ·6· PPHPMySQL全能权威指南 图1-2 下载PHP ·7· 第1章 准备基础知识、开发环境及配置运行环境 1.2.2 了解PHP的版本 PHP的Windows版本一共有4个
VC9 x86 Non Thread Safe、
VC9 x86 Thread Safe、
VC6 x86 Non Thread Safe和
VC6 x86 Thread Safe即
VC9和
VC6版本的区别以及Non Thread Safe和Thread Safe的区别。
1
VC6和
VC9
VC6就是使用Visual Studio 6 compiler编译器编译的版本它需要Visual C 6.0 Runtime支持Windows XP及更高版本的Windows系统都已经内置了该运行环境。
如果没有安装则可以从下面的网址下载安装 http://support.microsoft.com/kb/259403 如果用户是在Windows下使用Apache配合PHP的应该选择
VC6版本。
VC9就是使用Visual Studio 2008 compiler编译器编译的版本它需要Microsoft 2008 C Runtimex86或x64支持用户可以从下面的网址下载安装 http://www.microsoft.com/download/en/details.aspxdisplaylangenid29 如果用户是在Windows下使用IIS配合PHP的应该选择
VC9版本。
2Thread Safe和Non Thread Safe Thread Safe是指线程安全简称TS执行时会进行线程安全检查以防止有新请求就启动新线程的CGI执行方式而耗尽系统资源Non Thread Safe是指非线程安全简称NTS在执行时不进行线程安全检查。
PHP有两种执行方式ISAPI和FastCGI。
ISAPI执行方式是以DLL动态库的形式使用可以在被用户请求后执行在处理完一个用户请求后不会马上消失所以需要进行线程安全检查这样可以提高程序的执行效率。
所以如果是以ISAPI的方式来执行PHP建议选择Thread Safe版本。
FastCGI执行方式是以单一线程来执行操作所以不需要进行线程的安全检查从而可以提高执行效率。
所以如果是以FastCGI的方式来执行PHP建议选择Non Thread Safe版本。
针对Apache如果是以模块形式运行也就是ISAPI应该使用Thread Safe版本如果是以CGI方式运行则两种版本都可以使用但PHP官方并不建议将Non Thread Safe应用于产品环境。
知识进阶 Linux/UNIX系统采用多进程的工作方式而Windows系统采用多线程的工作方式。
如果在IIS下以CGI方式运行PHP会非常慢因为CGI模式是建立在多进程的基础之上的而非多线程。
一般我们会把PHP配置成以ISAPI扩展的方式来运行ISAPI是多线程的方式因此可提高速度。
但存在一个问题很多常用的PHP扩展是以Linux/UNIX的多进程思想来开发的这些扩展以ISAPI方式运行时就会出错从而搞垮IIS。
因此在IIS下CGI模式才是PHP运行的最安全方式但CGI模式对于每个HTTP请求都需要重新加载和卸载整个PHP环境其消耗是巨大的。
为了兼顾IIS下PHP的效率和安全微软给出了FastCGI的解决方案。
FastCGI可以让PHP的进程重复利用而不是每一个新的请求就重开一个进程。
同时FastCGI也允许几个进程同时执行。
这样既解决了CGI进程模式消耗太大的问题又利用上了CGI进程模式不存在线程安全问题的优势。
·8· PPHPMySQL全能权威指南 1.2.3 在Apache下配置PHP Apache是一个
开源的Web服务器它可以部署在多个平台上并且是免费的。
用户可以从http://www.apache.org上下载最新的Apache 2.2Win32版本这是一个可执行文件。
下面的网址包含了所有的Apache Win32版本如图1-3所示。
http://archive.apache.org/dist/httpd/binaries/win32/ 图1-3 下载Apache 2.2 本书选择下载apache_2.2.9-win32-x86-no_ssl-r2.msi。
1安装Apache 双击安装文件apache_2.2.9-win32-x86-no_ssl-r2.msi就可以启动安装程序最好将其安装在默认目录C:Program FilesApache Software FoundationApache2.2下并且在安装过程中选择将其安装为Service在80端口监听在这之前应当关闭IIS因为IIS 5.0也使用80端口如图1-4所示。
图1-4 Apache安装设置 安装成功后可以在托盘位置看到Apache的图标单击该图标通过弹出的菜单可以实现服务器的启动和停止如图1-5所示。
也可以在Apache托盘图标上单击鼠标右键从弹出的快捷菜单中选择Open Apache Monitor命令打开Apache Service Monitor对话框如图1-6所示。
在该对话框中可以完成对Apache的大量操作包括重启Apache。
·9· 第1章 准备基础知识、开发环境及配置运行环境 图1-5 Apache的图标 下面来测试Apache服务器是否安装成功打开浏览器输入 http://localhost/ 如果可以看到Apache的默认主页如图1-7所示便表明Apache服务器安装成功。
图1-6 Apache Service Monitor 图1-7 测试Apache服务器是否安装成功 2安装和配置PHP与Apache协同工作 1从下面的网址下载PHP http://windows.php.net/downloads/releases/archives/ 这里选择下载php-5.3.5-Win32-
VC6-x86.zip这是一个线程安全版本。
安装过程非常简单只需将下载的php-5.3.5-Win32-
VC6-x86.zip文档解压缩到一个目录下即可这里将它解压缩到C:PHP目录下。
2打开Apache 2.2的配置文件C:Program FilesApache Software FoundationApache2.2 confhttpd.conf来配置PHP。
有两种配置方式一种是模块模式配置另一种是CGI模式配置这里选择模块模式配置。
直接在配置文档末尾追加下面几行配置
代码 加载php5apache2_2.dll模块并指定类型映射 LoadModule php5_module c:/php/php5apache2_2.dll AddType application/x-httpd-php .php 指定php.ini文件所在的目录 PHPIniDir c:/php 这表示将扩展名为.php的文档交由php5apache2_2.dll执行。
技巧与提示 如果需要使用CGI模式配置可以做如下设置 ScriptAlias /php/ c:/php/ AddType application/x-httpd-php .php Action application/x-httpd-php /php/php-cgi.exe 但是通常情况下模块模式比CGI模式性能更好一般仅在Web服务器不支持模块模式时才使用CGI模式。
·10· PPHPMySQL全能权威指南 3用记事本打开文件php.ini搜索到doc_root行并将其路径指到Web根目录这里使用默认的根目录即 doc_root C:Program FilesApache Software FoundationApache2.2htdocs 4单击Restart按钮重新启动Apache并测试PHP的安装和配置是否正确。
新建一个名为phpinfo.php的PHP网页并将其保存在C:Program FilesApache Software FoundationApache2.2htdocs目录下输入下面几行script
代码 在浏览器中运行便可以看到如图1-8所示的结果。
图1-8 测试PHP应用服务器是否配置成功 phpinfo是PHP内置的一个函数可以输出当前PHP的配置信息在网页上可以清楚地显示当前PHP的版本、模块、环境变量等内容。
3配置支持模块 将C:PHP目录下的php.ini-dist改名为php.ini。
用记事本打开修改下面的信息。
1搜索到下面的
代码 extension_dir ./ 修改这一行
代码将其路径指到PHP目录下的ext目录即 extension_dir C:PHPext 或者使用相对路径某些版本下使用相对路径会导致模块无法加载所以推荐使用绝对路径 extension_dir ext 如果需要支持更多模块那么还要继续做配置工作如果不需要直接保存php.ini文件 即可。
2PHP所支持模块很多都是DLL文件但有些DLL不是免费的所以没有随PHP的压缩包一起发布。
不过C:PHPext目录下已有很多DLL文件。
搜索php.ini找到下面的文本 Windows Extensions 下面都是用分号在前面注释掉了支持的扩展模块如果需要PHP支持某个模块将前面的“”去掉即可。
3修改完成后保存php.ini。
·11· 第1章 准备基础知识、开发环境及配置运行环境 1.2.4 在IIS7.0下配置PHP 首先必须安装IISIIS是Windows的一个组件使用Windows安装盘即可安装。
1安装IIS7.0 1插入Windows安装盘选择“开始→控制面板”命令打开“控制面板”窗口双击“程序和功能”图标弹出“程序和功能”面板。
2在左侧选择“打开或关闭Windows功能”选项弹出“Windows功能”窗口如 图1-9所示。
选中“Internet信息服务”前的复选框然后单击“确定”按钮开始安装。
3安装完毕后可以测试IIS服务器是否安装成功。
打开浏览器输入 http://localhost/ 如果可以看到IIS的默认主页如图1-10所示便表明IIS服务器安装成功。
图1-9 “Windows功能”窗口 图1-10 测试IIS服务器是否安装成功 2FastCGI 自PHP 5.3开始PHP不再支持在IIS上通过ISAPI扩展运行而且在PHP 5.3文件中也没有php5isapi.dll现在只能通过FastCGI的方式执行。
首先应该下载和安装FastCGI从下面的网址可以在线安装FastCGI如图1-11所示。
http://www.iis.net/download/FastCGI 图1-11 下载FastCGI 选择IIS7版本按照向导指示就可以顺利将FastCGI安装到IIS7上。
·12· PPHPMySQL全能权威指南 3安装和配置PHP与IIS7.0协同工作 1从下面的网址下载PHP http://windows.php.net/downloads/releases/archives/ 这里选择下载php-5.3.5-nts-Win32-
VC9-x86.msi这是一个非线程安全版本。
2双击安装文件php-5.3.5-nts-Win32-
VC9-x86.msi就可以启动安装程序按照向导指示进行安装注意在安装过程中选择IIS FastCGI如图1-12所示。
图1-12 安装PHP 3 安装完毕后新建一个名为phpinfo.php的PHP网页并将其保存在C:inetpubwwwroot目录下输入下面几行script
代码 在浏览器中运行如果可以看到如图1-13所示的结果表明PHP应用服务器配置成功。
图1-13 测试PHP应用服务器是否配置成功
上一篇:
CppUnit_测试框架
下一篇:
第1章 现在完成时和现在完成进行时