史上最简! Apache 2.2下安装PHP 5.2.5

 更新时间:2016年11月25日 16:06  点击:1567

环境:PHP 5.2.5,Apache2.2

  Apache 2.2 下安装PHP 5.2.5 教程:

 打开Apache2.2conf里面的httpd.conf

1、在一堆LoadModule处添加:
LoadModule php5_module E:/php5.2.5/php5apache2_2.dll

2、找到AddType application/x-gzip .gz .tgz,在这行下面添加:
AddType application/x-httpd-php .php

3、在Apache2.2htdocs下新建 test.php 内容是:
<? echo phpinfo(); ?>
保存,并打开
http://localhost:8080/test.php
看到以下画面就成功

如果看不到请查找 Listen 查看自己设定的端口号,我的是:
#Listen 12.34.56.78:80
Listen 8082
端口号为8082,所以我要输入 http://localhost:8082/test.php

 Apache 2.2 添加对mysql的支持:

1、httpd.conf最后添加:
LoadFile E:/php5.2.5/php5ts.dll
PHPIniDir "C:/WINDOWS"
说明:PHPIniDir 填的是php.ini的位置

2、重启Apache,OK

 Apache 2.2 添加虚拟路径:

举例:
文件夹路径:E:mysite
欢迎页面:E:mysiteindex.php

1、在httpd.conf最后添加:
Alias /mysite "E:/mysite/"
<Directory "E:/mysite/">
    Options MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

2、查找DirectoryIndex
改为:
DirectoryIndex index.html index.php

3、重启apache,输入http://localhost:8080/mysite,ok

 注意事项:

1、在httpd.conf里面所有的路径不能用" "要用" / "

2、加入:AddHandler cgi-script .cgi .pl
可以让apache识别cgi


8、注册文件reg.PHP3
<?
require("common.PHP3");
require("mail.PHP3");
if($submit){
  if($id=="")error("请填写您的注册用户名!");
  elseif(!eregi("^[0-9a-zA_Z]+$",$id))error("你的用户名不能含有其他字符!");
  elseif($password=="")error("请填写您的密码!");
  elseif($password<>$password1)error("您的密码填写不正确!");
  elseif($name=="")error("请填写您的名字!");
  elseif($mail=="")error("请填写您的邮件地址!");
  else{
    $DBM=DBMopen("class","w");
    if(DBMexists($DBM,$id))error("这个用户名已经给别人注册了!");
    else{
      $intro=nl2br($intro);
      $data="$name|!:!|$nickname|!:!|$mail|!:!|$home|!:!|$oicq|!:!|$icq|!:!|$add|!:!|$tel|!:!|$birth|!:!|$job|!:!|$intro|!:!|$sex";
      DBMinsert($DBM,$id,$data);
      $pwd=DBMopen("password","w");
      DBMinsert($pwd,$id,$password);
    }
    DBMclose($DBM);
    $sendmsg="欢迎注册《深圳中学2000届高中(12)班同学录》n";
    $sendmsg.="下面是您的注册

环境:PHP 5.2.5,Zend studio 5.5.1,Zend Debugger 5.2.10

最简PHP调试环境搭建教程:
1、解压出来的文件夹内对应不同php版本有不同的文件夹
我是php5.2.5所以把5_2_x_comp下的ZendDebugger.dll拷到我的php安装目录(E:php5.2.5)里。
并把dummy.php拷到你的网站根目录下面(不知道网站根目录的请看下面的常见问题)

2、打开php.ini,在后面加上:
[Zend]
zend_extension_ts="E:php5.2.5ZendDebugger.dll"
zend_debugger.allow_hosts=127.0.0.1/32,127.0.0.1/24
zend_debugger.expose_remotely=allowed_hosts

3、重启IIS(不知道如何重启的看常见问题),打开phpinfo()若出现下图则成功

 

安装过程常见问题:
1、首先确定好版本号!php的版本多了,对应的Zend产品的版本号也要对应,只有Zend Debugger 5.2.x能够调试php5.2.5。被php版本和Zend的版本搞晕的朋友可以看我另一篇文章:“史上最简! Zend产品版本解析”。
Zend Debugger 5.2.10:http://downloads.zend.com/pdt/server-debugger/ZendDebugger-5.2.10-cygwin_nt-i386.tar.gz

2、啥叫网站根目录?
IIS装了之后在C盘新建了C:Inetpubwwwroot,这个wwwroot就是网站根目录,dummy.php就放这边。
打开控制面板->管理工具->Internet信息服务,在网站->默认网站上右键,属性->主目录->本地路径处也会看到C:Inetpubwwwroot

3、127.0.0.1/32,127.0.0.1/24,这个/32,/24是啥意思?
代表子网掩码,/32就是255.255.255.255(换算成二进制是32位),/24就是255.255.255.0

4、如何重启IIS?
打开cmd,先执行 net stop w3svc 再执行 net start w3svc

开始调试:
1、打开Zend studio->工具(Tool)->首选项(Preference)->调试(Debugger)这么设

 

 

 

 

1、在以前的版本里面可能会说 print 需要 () ,但是  php5.2.5中已经不需要了。
       echo 可以打印多个变量,print 不行



$a = "hello";
$b = "world";
echo $a,$b,"<br>";
echo $a.$b."<br>";
print $a.$b;

输出:

helloworld
helloworld
helloworld

但这样就会出现编译错误:



print $a,$b;


注意:$a $b 中间的是逗号

 

2、单引号跟双引号的区别:



$a = "hello";
$b = "world";
echo "$a $b";
输出:hello world



echo ''$a $b'';
输出:$a $b

还有一点要提的是像下面这样写是可以正常输出的



$arr = array("a" => 1);
echo $arr[''a''];


 



<

刚看了php的教程,由于php版本的问题发现数组这边有地方可以研究
针对 php5.2.5 做了几个实验发现:

 

1、



$arr = array("a" => 1,"b" => 2,"c" => 3);

但是如果这样定义数组会报编译错误:



$arr = array("a" = 1,"b" = 2,"c" = 3);

所以定义数组的时候只能用 =>

 

2、



$arr = array("a" => 1,"b" => 2,"c" => 3);
echo $arr[0];
echo $arr[1];

打出来的是一片空白,这样才打的出来:



echo $arr["a"];

 


3、增加元素或修改元素的时候只能用 =  了,不能用 =>



$arr = array("a" => 1,"b" => 2,"c" => 3);
$arr["c"=> 6;


像这样在以前的版本中也许可以使用,但是到了 5.2.5 就会出现编译错误
增加元素或修改元素要像以下这样写:



$arr = array("a" => 1,"b" => 2,"c" => 3);
$arr["d"= 4;
$arr["c"= 6;
删除元素要使用 unset  


unset ($arr["c"]);

 

4、做个实验,猜猜这样打出来是什么:



$arr = array("a" => 1,2,"b" => 3,4);
$arr[] = 5;
foreach($arr as $key => $value)
{
    
echo "key:$key value:$value<br>";
}

 

结果:

key:a value:1
key:0 value:2
key:b value:3
key:1 value:4
key:2 value:5

这样就很明了,只有在用户没有定义键的时候 php 才会自动使用从0开始的数字作为键

 

5、php 中的数组是有指针的,可以对数组进行向前向后操作



$arr = array("a" => 1,3,"b" => 2);
//创建完数组后默认指针指在第一个元素
echo current($arr)."<br>";
//前进一个位置
echo next($arr)."<br>";
//整理的默认原则是从小到大
sort($arr);
//整理完后数组指针又停在第一个元素
echo current($arr)."<br>";
echo next($arr)."<br>";
//后退一个位置
echo prev($arr)."<br>";


输出:

1
3
1
2
1

 



[!--infotagslink--]

相关文章

  • PHP7快速编译安装的步骤

    编译安装非常的简单了我们现在的php版本已经到了php7了,下文小编来为各位介绍一篇关于PHP7快速编译安装的步骤,希望文章能够帮助到各位。 一、安装必要一些依赖 yum...2016-11-25
  • 源码分析系列之json_encode()如何转化一个对象

    这篇文章主要介绍了源码分析系列之json_encode()如何转化一个对象,对json_encode()感兴趣的同学,可以参考下...2021-04-22
  • Rstudio中安装package出现的问题及解决

    这篇文章主要介绍了Rstudio中安装package出现的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-05-06
  • php中去除文字内容中所有html代码

    PHP去除html、css样式、js格式的方法很多,但发现,它们基本都有一个弊端:空格往往清除不了 经过不断的研究,最终找到了一个理想的去除html包括空格css样式、js 的PHP函数。...2013-08-02
  • PHP编译安装后PHP-FPM使用笔记

    PHP-FPM我们相信各位用高版本的php经常使用到了,下面整理了一些关于PHP-FPM的笔记,有兴趣的可进来看看。 今天赶上了123System OPenVZ VPS全场半价的机会,购入了一...2016-11-25
  • index.php怎么打开?如何打开index.php?

    index.php怎么打开?初学者可能不知道如何打开index.php,不会的同学可以参考一下本篇教程 打开编辑:右键->打开方式->经文本方式打开打开运行:首先你要有个支持运行PH...2017-07-06
  • 安装和使用percona-toolkit来辅助操作MySQL的基本教程

    一、percona-toolkit简介 percona-toolkit是一组高级命令行工具的集合,用来执行各种通过手工执行非常复杂和麻烦的mysql和系统任务,这些任务包括: 检查master和slave数据的一致性 有效地对记录进行归档 查找重复的索...2015-11-24
  • Linux安装Pytorch1.8GPU(CUDA11.1)的实现

    这篇文章主要介绍了Linux安装Pytorch1.8GPU(CUDA11.1)的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-03-25
  • vscode安装git及项目开发过程

    这篇文章主要介绍了vscode安装git及项目开发过程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-05-19
  • Visual Studio 2015下载和安装图文教程

    这篇文章主要为大家详细介绍了Visual Studio 2015下载和安装图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-09-22
  • Node调试工具JSHint的安装及配置教程

    现在我们介绍一种在Node下检查简单错误的JS代码验证工具JSHint。  JSHint的具体介绍参考http://www.jshint.com/about/,说直白点儿,JSHint就是一个检查JS代码规范与否的工具,它可以用来检查任何(包括server端和client端...2014-05-31
  • Centos中彻底删除Mysql(rpm、yum安装的情况)

    我用的centos6,mysql让我整出了各种问题,我想重装一个全新的mysql,yum remove mysql-server mysql之后再install并不能得到一个干净的mysql,原来的/etc/my.cnf依然没变,datadir里面的数据已没有任何变化,手动删除/etc/my.cn...2015-03-15
  • PHP中func_get_args(),func_get_arg(),func_num_args()的区别

    复制代码 代码如下:<?php function jb51(){ print_r(func_get_args()); echo "<br>"; echo func_get_arg(1); echo "<br>"; echo func_num_args(); } jb51("www","j...2013-10-04
  • 在PyCharm中安装PaddlePaddle的方法

    这篇文章主要介绍了在PyCharm中安装PaddlePaddle的方法,本文给大家介绍的非常想详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-02-05
  • linux服务器快速卸载安装node环境(简单上手)

    这篇文章主要介绍了linux服务器快速卸载安装node环境(简单上手),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-02-22
  • Ubuntu20.04安装cuda10.1的步骤(图文教程)

    这篇文章主要介绍了Ubuntu20.04安装cuda10.1的步骤(图文教程),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-07-30
  • PHP编程 SSO详细介绍及简单实例

    这篇文章主要介绍了PHP编程 SSO详细介绍及简单实例的相关资料,这里介绍了三种模式跨子域单点登陆、完全跨单点域登陆、站群共享身份认证,需要的朋友可以参考下...2017-01-25
  • uni-app从安装到卸载的入门教程

    这篇文章主要介绍了uni-app从安装到卸载的入门教程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-05-15
  • Postman安装与使用详细教程 附postman离线安装包

    这篇文章主要介绍了Postman安装与使用详细教程 附postman离线安装包,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-03-05
  • PHP实现创建以太坊钱包转账等功能

    这篇文章主要介绍了PHP实现创建以太坊钱包转账等功能,对以太坊感兴趣的同学,可以参考下...2021-04-20