记事本编辑PHP配置文件出错

今天在修改joomla系统的配置文件configuration.php时,手头上一时没有专门的编辑器,就直接用记事本打开修改了,以为保持的时候只要保存成UTF-8格式就没问题,结果就真的出问题了,提示

1
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by

其实问题就在于刚刚用记事本保存的configuration.php上。来看看vjuke@ZNZ对于这个问题的介绍

所有文件采用 UTF-8 编码,因此所有文本文件(模板文件和php文件)必须保存为 UTF-8 编码。另外,部分文本编辑软件,如Dreamweaver、记事本等,在保存UTF-8文件时会在文件最开始加入UTF-8识别记号(BOM)。BOM在WINDOWS下打开文件时不可见,但PHP在读取文件时仍会将其作为文件的一部分,由此会产生无法登入、页面空白、出现上面的提示信息、模板无法顶住页面顶部等现象。
  解决的方法:
  建议您使用
  Editplus 2.12 或者 UltraEdit 支持UTF-8的编辑器编辑PHP文件。它们对无BOM的UTF-8文件兼容较好;
  UltraEdit用户需将 “保存时对所有UTF-8写入UTF-8 BOM文件头标记” 选项设置为关,其它文本编辑器用户,在编辑完后如发现程序异常,可参考这篇文章解决。

所以,我修改的configuration.php文件无BOM信息,而在用记事本修改后强制加入,导致PHP读取这个文件时出现问题。解决方法很简单,换个文本编辑器。正好下载了个Komodo IDE,编辑后保存上传,OK,问题消失。

Posted in Joomla, PHP, 软件. 2 条评论 »

在Joomla文章中加载模块(Module)

我使用的YOOTheme自带了许多功能丰富的插件YOOtools,打算好好利用利用。而我恰巧想在文章正文中加载一个相册模块,来循环展示一些图片。实现方法很简单,在模块(Module)中建立自己需要的模块,其中位置(position)一项中输入自定义的一个位置名称,如myposition,当然不能和已有的位置名称冲突。接下来只要在文章中加入命令

{loadposition myposition}

即可,其中的myposition为之前模块自定义的位置名称。 (更多…)

Posted in Joomla, PHP. 一条评论 »

Allowed memory size of 33554432 bytes exhausted

今天在尝试修正Joomla输出中文PDF文件的问题时,按照Joomla之门的教程尝试修改好了字体文件,点击输出PDF的按钮时,却出现了

Allowed memory size of 33554432 bytes exhausted

这样的提示。搜索之,是因为PHP运行内存超出限制。查看了下,我使用的虚拟主机的PHP配置信息中,memory_limit这项的数值是32M,此项的说明是:Maximum amount of memory a script may consume (32MB),也就是说,服务器中某个脚本最大使用内存为32M,很多人出现

Allowed memory size of XXX bytes exhausted

也是因为这里的限制。 (更多…)

Posted in Joomla, PHP. 没有评论 »