解决PHP使用POST提交数据长度限制
在form使用中,如果有很多input表单,提交数据后,会提示错误。
原因是,PHP从5.3.9开始 php.ini 增加一个变量 max_input_vars 用来限制提交的表单数量。
该值默认情况下是1000 , 将此值改大一点就行了。
在form使用中,如果有很多input表单,提交数据后,会提示错误。
原因是,PHP从5.3.9开始 php.ini 增加一个变量 max_input_vars 用来限制提交的表单数量。
该值默认情况下是1000 , 将此值改大一点就行了。
PHP5.3配置好后,连接不上MYSQL,localhost指向了127.0.0.1,mysql命令检测正常。
经排查,原因是安装MYSQL时,没有开启TCP访问及3306端口。
操作系统是windows7 64位,WEB环境是apache2.2、php5.2.17。
在配置一个PHP系统的时候,出现“Call to undefined function curl_init()”的错误。
错误提示说curl_init未能正常加载。使用phpinfo检查,没有curl项目。
Nginx大多数时候,是用在Linux服务器上面,相关的配置教程也比较多。在Windows服务器上配置Nginx+PHP的教程很难找到,所以在这里跟大家分享一下。
1、从PHP官网上下载php对应版本,建议PHP5.3 nts版本
2、解压之后放到c盘根目录下(个人喜好)
3、php.ini-development这个文件更名为php.ini,也有的版本ini后面跟的是别的,都改成.ini
4、打开php.ini文件,修改:
前面文章谈到,在WINDOWS环境下,FastCGI比ISAPI运行PHP有着更佳的性能,所以把服务器上的PHP环境改为FastCGI了。
在配置完以后,出现错误提示:
Error Details: Could not find entry for "php" on site 2043809562 in
[Types] section. Error Number: 1413 (0x80070585). Error Description:
无效索引。 HTTP Error 500 - Server Error. Internet Information Services
(IIS)
通过检查,原来是FastCGI配置文件没有设置好。
服务器系统是windows2003 32位,内存2G,因为同时要运行ASP和PHP站点,所以PHP用的IIS+ISAPI。
之前本博有过评测,针对windows2003用ISAPI还是FastCGI哪个效率更高。
FastCGI比ISAPI性能更佳,这个已经不用怀疑了。
今天闲来无事,把PHP换成FastCGI了。
你可能会问:Apache不是在Linux环境中使用吗?
有些同学对Linux系统不熟悉,或者其它原因,在Windows服务器中安装了Apache,当然是可以的。
我们知道,在Linux环境中查看版本通过命令。
那么问题来了:
Windows环境下怎么查看Apache、PHP当前使用的版本呢?
其实也很简单。
甚至比Linux环境下更简单。
0、用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的“函数”(译注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号)。
1、如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。
2、$row[’id’] 的速度是$row[id]的7倍。
3、echo 比 print 快,并且使用echo的多重参数(译注:指用逗号而不是句点)代替字符串连接,比如echo $str1,$str2。
4、在执行for循环之前确定最大循环数,不要每循环一次都计算最大值,最好运用foreach代替。
5、注销那些不用的变量尤其是大数组,以便释放内存。