当前位置:  编程技术>php
本页文章导读:
    ▪windows中PHP5.2.14以及apache2.2.16安装配置方法第1/2页       首先下载好需要安装的配置文件1、apache-2.2.162、php-5.2.14-Win32 一、apache配置 apache的安装不说了,安装过程中选择自己想安装的位置,一路next,就可以了。默认80端口,安装结束后,浏览器输.........
    ▪php表单转换textarea换行符的方法       下面是我对这个问题的解决过程,最后算是完全搞懂了,真是阴沟里险些翻船 1.必须知道textarea中的换行符是 \n  (个人检测发现按回车键是\n,好像在linux下是\r\n) 2.用nl2br之前,请仔细看好.........
    ▪PHPnow安装服务[apache_pn]失败的问题的解决方法       安装PHPnow时如果遇到下列问题: 安装服务[apache_pn]失败.可能原因如下: 1. 服务名已存在,请卸载或使用不同的服务名. 2. 非管理员权限,不能操作 Windows NT 服务. 请首先确认操作系统的版本.........

[1]windows中PHP5.2.14以及apache2.2.16安装配置方法第1/2页
    来源: 互联网  发布时间: 2013-11-30

首先下载好需要安装的配置文件
1、apache-2.2.16
2、php-5.2.14-Win32

一、apache配置

apache的安装不说了,安装过程中选择自己想安装的位置,一路next,就可以了。默认80端口,安装结束后,浏览器输入http://localhost/进行验证,成功的话会输出It works!

apache配置:配置文件位于安装目录下的%APACHE_HOME%\conf\httpd.conf,修改根目录DocumentRoot(一共两处)。端口也在这里修改。

二、php配置

把下载好的php-5.2.14-Win32.zip解压。注意下载的时候不要下php的debug或者none-thread-safe版。否则与apache结合后会出错。

把解压出来的php.ini-dist复制一份做备份,然后把原php.ini-dist重命名为php.ini,打开该文件,进行配置。

1.设置扩展位置:extension_dir = "%PHP_HOME%/ext"(修改后启用该设置要去掉前面的分号,%PHP_HOME%为php的解压目录)

2.打开需要用到的扩展:将extension=php_bz2.dll,extension=php_gd2.dll,extension=php_mysql.dll,extension=php_mysqli.dll前面的分号去掉(注意前面不能有空格),如果还要开其它扩展,那么将其它扩展前面的分号去掉。

3.时差问题:查找 

        ;date.timezone =

   修改为

        date.timezone = PRC

4.设置与apache结合

打开apache配置文件httpd.conf,在

#LoadModule vhost_alias_module modules/mod_vhost_alias.so

这一行的下面输入:

LoadModule php5_module E:/php/php-5.2.14-Win32/php5apache2_2.dll

PHPIniDir "E:/php/php-5.2.14-Win32"
AddType application/x-httpd-php .php .phtml

解释:

    第一行为php与apache结合需要用到的动态链接库位置,该文件在php解压后的根目录中。

    第二行为php.ini文件的路径

    第三行是告诉浏览器对.php.phtml文件转发给apache进行解析。

重启Apache,这样就可以和php关联起来了。(注意每次修改Apache或者PHP配置文件时都要重启Apache)

应该会遇到乱码的问题,当遇到的时候在继续补充。

PS: 果然遇到乱码了,我用的是Eclipse for PHP Developers进行开发。在首选项里将workspace的编码默认设置为utf-8,可是当php或者html页面中,如果不包含<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">,那么就会出现中文乱码。查看乱码文件的编码已经是utf-8了,必须另存重新保存为utf-8,乱码才消失,应该是bom (Byte Order Mark)的问题。目前解决方法:打开php.ini文件,查询关键字:“default_charset”,去掉前面的分号,将值修改为utf-8,重启apache。


    
[2]php表单转换textarea换行符的方法
    来源: 互联网  发布时间: 2013-11-30

下面是我对这个问题的解决过程,最后算是完全搞懂了,真是阴沟里险些翻船

1.必须知道textarea中的换行符是 \n  (个人检测发现按回车键是\n,好像在linux下是\r\n)

2.用nl2br之前,请仔细看好手册解释,我就是搞郁闷了,一般都理解为将\n转换成<br >,其实不是的:

看php手册解释:

nl2br –  Inserts HTML line breaks before all newlines in a string

Returns string with ‘<br />' inserted before all newlines

意思是说在 新的一行前插入<br />

w3cschool上的说法是:

nl2br() 函数在字符串中的每个新行 (\n) 之前插入 HTML 换行符 (<br />)。

所以nl2br()能够插入<br> 但 \n 依旧存在,比如说 字符串源码是:程序\n生活网,我们nl2br 之后就是 程序<br>\n生活网 所以我们看到的效果将是

程序

生活网———————-换行了,因为源码中还有\n

3.用php函数,str_replace替换函数,比如str_replace(‘\n','<br />') ,问题是替换并没有成功,一直都没有替换掉,我弄了好久甚至开始怀疑textarea中的换行符是不是\n,现在想想真是太动摇了,o(∩_∩)o…    其实我经过测 分别替换    \n       /n   后直觉告诉我自己走进了死胡同,这不是解决问题的方式,肯定有哪里存在根本性错误。突然我想到了会不会是单引号或者双引号的问题呢,于是将str_replace(‘\n','<br />') 改成str_replace(“\n”,”<br />”),灵光闪现了,替换成功。巨汗!

又打开手册把单引号和双引号再看了一遍,最后长叹了一口气,还是自己基础的问题啊,php随简单,还是要注意细节啊。

手册中关于单双引号的解释很详细:

单引号

指定一个简单字符串的最简单的方法是用单引号(字符 ‘)括起来。

要表示一个单引号,需要用反斜线(\)转义,和很多其它语言一样。如果在单引号之前或字符串结尾需要出现一个反斜线,需要用两个反斜线表示。注意如果你试图转义任何其它字符,反斜线本身也会被显示出来!所以通常不需要转义反斜线本身。

————–所以我们用str_replace(‘\n','<br />')替换的 字符串中的 \n 而不是换行符,似乎有些晕。也就是说单引号内的是字符串,php不做任何解释,这其实在别的地方用的时候都知道,但没想到连换行符都不解释。 双引号

如果用双引号(”)括起字符串,PHP 懂得更多特殊字符的转义序列:

表格 6-1. 转义字符

序列
含义

\n
换行(LF 或 ASCII 字符 0×0A(10))

\r
回车(CR 或 ASCII 字符 0×0D(13))

\t
水平制表符(HT 或 ASCII 字符 0×09(9))

\\
反斜线

\$
美元符号

\”
双引号

\[0-7]{1,3}
此正则表达式序列匹配一个用八进制符号表示的字符

\x[0-9A-Fa-f]{1,2}
此正则表达式序列匹配一个用十六进制符号表示的字符

此外,如果试图转义任何其它字符,反斜线本身也会被显示出来!

———这下textarea换行的问题明了了,不是换行符的问题,也不是nl2br的问题,是所有的转移只存在双引号中,单引号在php中只做字符处理。多么郁闷的错误啊。以后一定的牢记。

必须知道textarea中的换行符是 \n (个人检测发现按回车键是\n,好像在linux下是\r\n)

这句有问题:经过我的测试,在windows下是\r\n,在linux才是\n(这个没实测),另外,在win下,\r,\n均有换行的功能...

    
[3]PHPnow安装服务[apache_pn]失败的问题的解决方法
    来源: 互联网  发布时间: 2013-11-30
安装PHPnow时如果遇到下列问题:

安装服务[apache_pn]失败.可能原因如下:

1. 服务名已存在,请卸载或使用不同的服务名.
2. 非管理员权限,不能操作 Windows NT 服务.

请首先确认操作系统的版本。如果您正在使用Windows Vista或Windows 7,那么首先要排除权限问题。您可以在”开始——搜索“中输入”cmd“,在搜索结果中找到“cmd.exe“,点右键,选择“以管理员身份运行”。然后使用DOS命令重新运行“PHPnow”解压目录中的“Init.cmd”:

C:\>cd PHPnow

C:\PHPnow>init
如果使用上述方法仍然安装失败,则可以尝试再次以上述方式启动“命令提示符(CMD)”,进入PHPnow的“PnCmds”目录,执行其中的“绝对强制卸载.cmd”:

C:\>cd PHPnow\PnCmds

C:\PHPnow\PnCmds>绝对强制卸载
然后删除PHPnow目录,重新启动计算机,再执行“Setup.cmd”重新安装。

    
最新技术文章:
▪PHP函数microtime()时间戳的定义与用法
软件工程/软件设计 iis7站长之家
▪PHP数组排序方法总结(收藏)
▪php数组排序方法大全(脚本学堂整理奉献)
▪php数组排序的几个函数(附实例)
▪php二维数组排序(实例)
▪php根据键值对二维数组排序的小例子
▪php验证码(附截图)
▪php数组长度的获取方法(三个实例)
▪php获取数组长度的方法举例
▪判断php数组维度(php数组长度)的方法
▪php获取图片的exif信息的示例代码
▪PHP 数组key长度对性能的影响实例分析
▪php函数指定默认值的方法示例
▪php提交表单到当前页面、提交表单后页面重定...
▪php四舍五入的三种实现方法
▪php获得数组长度(元素个数)的方法
▪php日期函数的简单示例代码
▪php数学函数的简单示例代码
▪php字符串函数的简单示例代码
▪php文件下载代码(多浏览器兼容、支持中文文...
▪php实现文件下载、支持中文文件名的示例代码...
▪php文件下载(防止中文文件名乱码)的示例代码
▪解决PHP文件下载时中文文件名乱码的问题
▪php数组去重(一维、二维数组去重)的简单示例
▪php小数点后取两位的三种实现方法
▪php Redis 队列服务的简单示例
▪PHP导出excel时数字变为科学计数的解决方法
▪PHP数组根据值获取Key的简单示例
▪php数组去重的函数代码示例
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3