PHP编程:让你的PHP4和PHP5共存...
接触MYSQL,开始设计数据库程序php5 优点不多说了,:D 害处嘛...是CGI体例的(援用官方原文:we consider installing PHP like this suicidal.)空话少说,直接看办法:
一,本文触及软件极为版本:
Windows 2000 Professional/XP
Apache 1.3.28 FOR WIN
Microsoft Internet Server Information(IIS6)
PHP 4.3.3(4.3.5), PHP 5.0.0 beta(5.0.0RC1)
MySQL 3.23.57(3.23.58)
二,大致步调:(二,三任选)
1.分离装置各版本的PHP
2.装置APACHE,设置APACHE 和 PHP
3.装置IIS,并在IIS中设置PHP各版本[注1]
4.装置MYSQL
三,装置前筹办:
将所须法式COPY至各文件夹,本文依照以下目次布局停止,你可以依据需求自行修正^^:
C:/httpd/Apache
C:/httpd/MySQL
C:/httpd/PHP4
C:/httpd/PHP5
C:/httpd/php-includes
C:/httpd/phpMyAdmin
C:/httpd/tmp
C:/httpd/www
到C:/WINNT/system32/drivers/etc(XP是C:/WINDOWS/system32/drivers/etc)文件夹下,找到hosts文件(没有?! @_@ 那末.... :D ),在底下增添
127.0.0.1 php4 # Waiter PHP 4
127.0.0.1 php5 # Waiter PHP 5
吼吼...假如你懂~~本人修正其他名字吧 8D 咱们持续...
保留文件...
四,装置各版本PHP
假定你已下载你需求的各版本PHP...(哪下载?? :P 本人找吧...)
这里以4.3.3和5.0.0-beta为例...(4.3.5vs5.0.0RC1我也试了.假如和你情况纷歧样不要怪我 :( ,迥然不同,本人揣摩吧) ;)
㈠装置PHP4.3.3
①解紧缩下载文件(:) 地球人都晓得)
②将PHP4.3.3中的php.exe, php.ini-recommended, phpêmbed.lib, php4ts.dll, php4ts.lib, dll/*.* 和 extensions/*.* 拷贝到C:/httpd/PHP4
③修正php.ini-recommended:
extension_dir = "C:/httpd/PHP4/extensions/"
cgi.force_redirect = 0
保留为php.ini(就在C:/httpd/PHP4/下)
㈡装置PHP5.0.0BETA
①解紧缩...
②将php.exe, php.ini-recommended, phpêmbed.lib, php4ts.dll, php4ts.lib, dll/*.* 和 extensions/*.*拷贝至C:httpdPHP5
假如是PHP5.0.0RC1,那末没有dll和extensions目次,只要ext--就是extensions拉
假如...你是mysql的忠厚用户,别忘了把libmysql.dll也拷曩昔[注2].
③修正php.ini-recommended:
extension_dir = "C:/httpd/PHP5/extensions/"
cgi.force_redirect = 0
假如是PHP4.0.0RC1,那末extension_dir = "C:/httpd/PHP5/ext/"
保留为php.ini(就在C:/httpd/PHP5/下)
五,设置装备摆设APACHE
翻开C:/httpd/Apache/conf/httpd.conf,在底下追加一些设置:
<VirtualHost *:80>
ServerAdmin test@php433
ServerName php4
ServerAlias www
DocumentRoot "C:/httpd/www"
<Directory "C:/httpd/www">
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
ScriptAlias /php4/ "C:/httpd/php4/"
AddType application/x-httpd-php .php
Action application/x-httpd-php "/php4/php.exe"
</VirtualHost>
<VirtualHost *:80>
ServerAdmin test@php500
ServerName php5
DocumentRoot "C:/httpd/www"
<Directory "C:/httpd/www">
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
ScriptAlias /php5/ "C:/httpd/php5/"
AddType application/x-httpd-php .php
Action application/x-httpd-php "/php5/php-cgi.exe"
</VirtualHost>
六,关于PHP5和MYSQL
MYSQL的装置,我就不多说了,本人下了装吧...(跳过这段没定见吧? )
你可以经由过程修正php.ini,来加载MYSQL... (忧伤...)
七,测试...
启动APACHE(假如httpd.conf设置装备摆设有错,会有失足提醒...),然后地址栏输出http://php4和http://php5就分离启动PHP4和PHP5咯...爽吗? :D :D :D [注3]
信任对宽大PHP法式员,和想学PHP5又不想保持PHP4的同志来讲,这会是个不错的办法.ENJOY IT!
总结一下:
其实思绪很复杂,使用CGI体例完成PHP4和PHP5的共存.我找了良多材料,这个算最复杂最适用了.不外只合适人人本机玩,万万别在办事器上这么弄...不然~效果自信...别找我
假如你按下面办法有成绩,可以测验考试其他路子,这里枚举一些国外的胜利案例:
http://wiki.coggeshall.org/37.html
http://www.circle.ch/blog/p1387.html
http://www.schlitt.info/applications/blog/..._5_prallel.html
有乐趣的可以持续进修下...
持续关于本计划的一点主要增补:
PHP4和PHP5共存,存在一个php.ini抵触的成绩...
人人都晓得,普通做法是需求将php.ini复制到体系文件夹下(C:WinNT or C:Windows).假如同时装置多版本,必将会形成抵触...
其实,假如人人细心浏览PHP装置文档,会有以下一段文字:
Does Where C I cut to could the php.ini? The php.ini files is only searched in two places: 1) in your Apache installation directory (e.g. c:apacheapache) 2) in your %SYSTEMROOT% directory.
而咱们恰是利用的第一种体例...(是否是官方早料到有这类情形??GOD KNOWS...)
上两张装置后的 PHPINFO 的图:
我在上述情况下测试胜利了...假如你碰到坚苦可以留言或到会商区一同会商。
结语:
偶不太会写教程之类的东东...本人看了懂,却不是很轻易让他人了解,人人只好谦让了.
固然进程对照复杂,不外费了我很多工夫(有两个中央...我找的材料有误,把我害惨了),这个大A作证拉...( :D 大A睡了一觉起来上茅厕,我还在...此处少儿不宜,删去500字)
PHP5时期愈来愈近,赶忙深切懂得去吧...
-------------------------------------------------------------------------
[注1]:
原本想写FOR IIS的...可其实不想在本人机械上装个没用的器材(对我而言 :( ),so...题目列了,却保持写了...对局部看客说声抱愧...
[注2]:
这里说点题外话:在PHP5.0.0RC1中,不晓得人人看到ext下有个mysqli.dll,和php.exe同层目次下有个libmysqli.dll么?奇异这是干吗的?其实这是官方针对MYSQL的新版(4.1.0好象是...吧)的一个晋级,关于高版本MYSQL玩家可以尝尝...听说撑持MYSQL一些新特征哦
[注3]:
在启动APACHE时,假如看到甚么"overlap on port 80"...不要焦急,在httpd.conf中,把NameVirtualHost *:80前的正文去了便可...(这个中央难了我好长工夫...只怪APACHE设置不熟习.不外此次算好好把APACHE的设置看了遍,仍是有播种)
更多相干会商请到会商区:http://club.phpe.net/index.php?act=ST&f=16&t=4661会有很多高手的鼓励,新手的支持,慢慢你劲头就十足,有更多的信心和兴趣去学。 不禁又想起那些说php是草根语言的人,为什么认得差距这么大呢。 我还是强烈建议自己搭建php环境。因为在搭建的过程中你会遇到一些问题,通过搜索或是看php手册解决问题后,你会更加深刻的理解它们的工作原理,了解到php配置文件中的一些选项设置。 曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线\\\\\\\'_\\\\\\\' ; 没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。 对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。 这些中手常用的知识,当你把我说的这些关键字都可以熟练运用的时候,你可以选择自己 因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax 首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。 爱上php,他也会爱上你。 说点我烦的低级错误吧,曾经有次插入mysql的时间 弄了300年结果老报错,其实mysql的时间是有限制的,大概是到203X年具体的记不清啦,囧。 我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能: 因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax 曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线\\\\\\\'_\\\\\\\' ; 最后祝愿,php会给你带来快乐的同时 你也会给他带来快乐。 先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。 使用 jquery 等js框架的时候,要随时注意浏览器的更新情况,不然很容易发生框架不能使用。 首先声明:我是一个菜鸟,是一个初学者。学习了一段php后总是感觉自己没有提高,无奈。经过反思我认为我学习过程中存在很多问题,我改变了学习方法后自我感觉有了明显的进步。 使用 jquery 等js框架的时候,要随时注意浏览器的更新情况,不然很容易发生框架不能使用。 php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。
页:
[1]
2