php运行网站内存不足提示 Fatal error Allowed memory size
解决方法有多种,下面我根据不同权限的站长来介绍
有服务器管理权限可以修改php.ini文件
可以直接在 php.ini 把 memory_limit = 8M ; 调大至12M或更大。(注意:后面为M不是MB哦)
没有服务器管理权限
1.php中直接修改内存但需要你php支持ini_set函数,这个函数如果在php.ini禁止使用那么此方法将无效。
ini_set('memory_limit','12M');//当然可以设置为一个更大的值
2.htaccess方式,这种一般的空间主机都支持
在根目录建立.htaccess文件,添加如下内容:
<FilesMatch ".(php|html?)$">
php_value memory_limit 20000000
</FilesMatch>
注意:一般的话,8M是标准,但有些时候8M是不够用的。
友情提示:Fatal error: Allowed memory size of 8388608 bytes exhausted。表示配置的memory_limit值为8M。解决方法也是用上面介绍的方法来解决。memory_limit值要一点一点加调试成功即可
导入php中文乱码问题一般就是字符集编码问题了,只有字符集编码问题才会导致中文乱码了,这是我总结了所有在php开发中看到中文乱码问题的根本原因了,下面我整理了一些关于php中文乱码问题解决办法与例子,希望能解决各位的朋友哦。1.mysql+php中文乱码
出现这种问题是数据库连接与网页编码不统一导致了
解决办法
在mysql 连接时我们在后面设置一句
mysql_query("SET NAMES GBK");
例子
在连接数据库的语句中.
代码如下 | 复制代码 |
mysql_connect('localhost','user','password'); mysql_select_db('my_db'); mysql_query("set names 'utf8'"); //select 数据库之后加多这一句 |
2.PHP中文文件名输出乱码
出现文名乱码是我们环境不支持中文所导致了或编码问题我们只要进行转换字符编码为uft8即可
代码如下 | 复制代码 |
$file_name="我的文件.jpg"; |
3.json_encode中文乱码问题
1.json_encode UTF8码中文后的字符串不可阅读
2.json_encode 多级数组中文乱码问题
3.json_encode 数组中包含换行时错误问题
4.json_encode 数组中键为中文的问题
代码如下 | 复制代码 |
function _urlencode($elem) |
3.HTML内容编码
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />,这里我们指定了浏览器在解析HTML时使用UTF-8编码 。如果这里没有指定,浏览器会使用自己缺省的编码。不同的浏览器缺省编码会有所不同,比如IE6是GB2312,FireFox是UTF-8。所以,上面这段代码如果没有,在FireFox会显示正常,在IE6就会显示乱码。
4.php内容乱码
在php中我们只要在文件头加上
代码如下 | 复制代码 |
<?php ?> |
5.url中文乱码的兼容性
在url地址里出现中文参数,接收页面出现乱码,这个是经常遇到的问题
最基本的解决办法是链接里加上urlencode,接收页面会自动解码或者加上urldecode
但是有时候链接来自多个地方,有的意见urlencode了,有点没有
比如在谷歌浏览器(chrome)地址栏里敲入中文,传递的过程浏览器会自动给你编码
而IE核心缺不然
这就导致同一个接收页面在谷歌浏览器里可以正常显示,而在IE浏览器则是乱码。
解决方法:
代码如下 | 复制代码 |
$keyboard2 = iconv("gb2312","UTF-8",$keyboard); if($keyboard2) |
6.htmlentities汉字中文乱码
htmlentities函数作用在汉字变量中的时候会出现乱码
$resultsText = str_replace("[QUERY]", htmlentities($(www.111cn.net)query), $resultsText);
正确的做法是改变htmlentities的默认参数
htmlentities($query,ENT_COMPAT,'UTF-8')
7.PHP下载文件名中的中文乱码
代码如下 | 复制代码 |
$filename = "中文 文件名.txt"; |
例子。
echo $showtime=date("Y-m-d H:i:s");
2014-06-06 10:44:47
而真正的时间是
2014-06-06 18:44:47
从上面来看是相差8小时了,经过百度搜索发现是现,PHP默认设置的时间是以格林威治时区为标准的了,我们只要改成北京时间即可。
不能修改php.ini,则需要在关于时间的初始化的语句的上面加上 date_default_timezone_set (XXX);
能修改php.ini。那么你就可以将php.ini里的date.timezone = ??? 改成date.timezone = PRC
然后再测试
<?php
date_default_timezone_set('PRC');//使用PHP的date函数获取时间之前,先将时区设置为北京时区
echo "当前时间为:".date('Y-m-d H:i:s');//获取当前时间
?>
当前时间为:2014-06-06 18:44:47
在php中碰到中文文件名乱码一般都是初学者了,因为我们一般不会使用中文文名了,因为大家都知道php对中文支持不友好,那么我们要如何解决php中文文件名乱码问题呢?下面一聚教程小编给各位整理了一些方法,下面一起来看看。原因是编码问题,所以要转码,用户PHP里面的 iconv 函数就可以解决:
iconv(“当前使用的编码如:utf-8″,”要转换的编码如:GB2312″,”文件名”);
实例:
代码如下 | 复制代码 |
$file_name="我的文件.jpg"; |
例子
代码如下 | 复制代码 |
<?php ?> |
另一种解决中文乱码问题在于
代码如下 | 复制代码 |
$sFileName = "sda.php"; |
我们还可以使用urlencode来进行编译
如 urlencode('中文');
例子
代码如下 | 复制代码 |
$file = "/tmp/中文名.tar.gz"; $filename = basename($file); header("Content-type: application/octet-stream"); //处理中文文件名 header('Content-Disposition: attachment; filename="' . $filename . '"'); |
注意:我的服务器是windows xp、apache,估计xp字符集是gbk。因为我的php代码保存为utf-8格式的,在给文件名命名时会出现乱码的情况,所以可以用iconv()函数将原本的utf-8格式的文件名转换为gbk格式的。
比较悲剧的是今天使用了cdn+文件缓存,结果网站出现一些内容不正常了,我折腾了半天没发现问题于时重启了服务器,结果重启之后apache 弹出错误应用程序 httpd.exe,版本 2.2.22.0,错误模块 php5ts.dll提示了,我查看了一下系统日志发现一段长长的代码,如下所示apache错误提示
事件类型: 信息
事件来源: Application Error
事件种类: (100)
事件 ID: 1004
日期: 2014-6-27
事件: 15:55:13
用户: N/A
计算机: xxxx
描述:
报告队列中的错误: 错误应用程序 httpd.exe,版本 2.2.22.0,错误模块 php5ts.dll,版本 5.2.17.17,错误地址 0x000acde5。
有关更多信息,请参阅在 http://go.microsoft.com/fwlink/events.asp 的帮助和支持中心。
数据:
0000: 41 70 70 6c 69 63 61 74 Applicat
0008: 69 6f 6e 20 46 61 69 6c ion Fail
0010: 75 72 65 20 20 68 74 74 ure htt
0018: 70 64 2e 65 78 65 20 32 pd.exe 2
0020: 2e 32 2e 32 32 2e 30 20 .2.22.0
0028: 69 6e 20 70 68 70 35 74 in php5t
0030: 73 2e 64 6c 6c 20 35 2e s.dll 5.
0038: 32 2e 31 37 2e 31 37 20 2.17.17
0040: 61 74 20 6f 66 66 73 65 at offse
0048: 74 20 30 30 30 61 63 64 t 000acd
0050: 65 35 e5
直接百度搜索问题
解决版本有两个:
1.复制php5ts.dll到apaceh的bin目录下或者系统目录下c:/windows/system32后,重启系统。
2.php目录下的libmysql.dll拷贝到到系统目录system32下就好了。
突然出这个问题也担心是中毒了所以对服务器进行了一些限制操作,在php.ini中加上了
disable_functions = phpinfo,passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,fsocket,fsockopen
然后重启apache,问题解决了
相关文章
- 本文为那些对学习 Windows PowerShell 命令行和脚本编写环境感兴趣的系统管理员提供了资源。也请告诉我们本网站如何才能对您更有用处。...2020-06-30
- 这篇文章主要介绍了浅谈redis key值内存消耗以及性能影响,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-02-07
- 这篇文章主要介绍了详解分析MySQL8.0的内存消耗,帮助大家更好的理解和学习使用MySQL,感兴趣的朋友可以了解下...2021-03-23
- 这篇文章主要介绍了C#隐式运行CMD命令(隐藏命令窗口),本文实现在winform窗口中运行CMD命令,需要的朋友可以参考下...2020-06-25
- 这篇文章主要介绍了解决Pycharm 运行后没有输出的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-02-06
- 这篇文章主要介绍了解决使用OpenCV中的imread()内存报错问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-16
- 这篇文章主要介绍了Python运行提示缺少模块问题解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-05-10
- 今天小编就为大家分享一篇解决tensorflow训练时内存持续增加并占满的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-04-22
- 这篇文章主要介绍了C#判断程序是否是管理员权限运行的方法代码示例,本文直接给出实现代码例子,需要的朋友可以参考下...2020-06-25
- 这篇文章主要介绍了在Linux上运行C#的方法,实例分析了Linux平台下Mono软件包的应用技巧,以及在此基础之上的C#运行方法,具有一定的参考借鉴价值,需要的朋友可以参考下...2020-06-25
- 这篇文章介绍了C#操作内存读写方法的主要实现代码,下面让我们来看看具体的实例实现,有需要的朋友可以参考一下...2020-06-25
- 在本篇文章里小编给大家整理了关于C#托管内存与非托管内存之间的转换的实例以及相关知识点,需要的朋友们学习下。...2020-06-25
- 这篇文章主要介绍了python基于opencv检测程序运行效率,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-05-09
- 这篇文章主要介绍了Redis swap空间的使用示例,帮助大家更好的理解和学习使用Redis数据库,感兴趣的朋友可以了解下...2021-03-25
Nginx反向代理proxy_cache_path directive is not allowed错误解决方法
这篇文章主要介绍了Nginx反向代理proxy_cache_path directive is not allowed错误解决方法,需要的朋友可以参考下...2016-01-27hbuilder怎么运行php?如何用HBuilder调试PHP程序
本文详细介绍了用HBuilder调试PHP程序的教程,对初学php的同学来说很有用,有兴趣的同学可以看看。 先到这里下载HBuilder(HBuilder是最棒的PHPIDE,可以参考PHP是世界上...2017-07-06- 这篇文章主要介绍了c# 通过内存映射实现文件共享内存的示例代码,帮助大家更好的理解和学习使用c#,感兴趣的朋友可以了解下...2021-04-24
- 本篇文章是对C/C++中如何终止线程运行的方法进行了详细的分析介绍,需要的朋友参考下...2020-04-25
- 这篇文章主要介绍了Android内存溢出及内存泄漏原因进行,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-08-06
- 这篇文章主要介绍了.NET 5 部署在docker上运行的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-03-06