匹配双字节字符(包括汉字在内):[^\x00-\xff]
匹配空行的正则表达式:\n[\s| ]*\r
匹配HTML标记的正则表达式:/< (.*)>.*< \/\1>|< (.*) \/>/
匹配首尾空格的正则表达式:(^\s*)|(\s*$) 阅读全文
匹配双字节字符(包括汉字在内):[^\x00-\xff]
匹配空行的正则表达式:\n[\s| ]*\r
匹配HTML标记的正则表达式:/< (.*)>.*< \/\1>|< (.*) \/>/
匹配首尾空格的正则表达式:(^\s*)|(\s*$) 阅读全文

execution time of 30 seconds exceeded
这是一个30秒运行超时的错误。
Fatal error: Maximum
出现这个错误如何解决 去哪里可以设置最大执行时间? 阅读全文
PHPCMS http://www.phpcms.cn/
phpcms 2.0 由原9466article升级升级更名而来,是一个可以全站生成html的综合网站内容管理系统,能适应大中型网站的需求。
目前PHPCMS以新闻文章管理系统为主,同时有公告管理、友情链接管理、数据库管理、语言管理、风格模板管理、用户管理、JS文件管理等小的辅助功能模块。PHPCMS集多功能于一体让用户实现在线可视化管理网站,因此安装和使用PHPCMS无须专业知识。 阅读全文
Ryan 发表于 星期四, 十月/29/2009 | PHP |
0 条留言
标签:php cms, php内容管理系统, 国内php cms
先准备好软件:
Apache官方下载地址:apache_2.0.55-win32-x86-no_ssl.msi,更多版本在这里;
php官方下载地址:php-5.0.5-Win32.zip,更多镜像下载地址,更多版本下载;
mysql官方下载地址:mysql-4.1.14-win32.zip,更多镜像下载地址,更多版本下载。
阅读全文
Ryan 发表于 星期六, 四月/18/2009 | PHP |
1 条留言
标签:apache, mysql, php, windows

Sphinx是一个基于SQL的全文检索引擎,可以结合MySQL,PostgreSQL做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。Sphinx特别为一些脚本语言设计搜索API接口,如PHP,Python,Perl,Ruby等,同时为MySQL也设计了一个存储引擎插件。
Sphinx单一索引最大可包含1亿条记录,在1千万条记录情况下的查询速度为0.x秒(毫秒级)。Sphinx创建索引的速度为:创建100万条记录的索引只需 3~4分钟,创建1000万条记录的索引可以在50分钟内完成,而只包含最新10万条记录的增量索引,重建一次只需几十秒。

Sphinx的主要特性包括:
高速索引 (在新款CPU上,近10 MB/秒);
高速搜索 (2-4G的文本量中平均查询速度不到0.1秒);
高可用性 (单CPU上最大可支持100 GB的文本,100M文档);
提供良好的相关性排名;
支持分布式搜索;
提供文档摘要生成;
提供从MySQL内部的插件式存储引擎上搜索;
支持布尔,短语, 和近义词查询;
支持每个文档多个全文检索域(默认最大32个);
支持每个文档多属性;
支持断词;
支持单字节编码与UTF-8编码;
官方网址:http://www.sphinxsearch.com/
Sphinx速成指南:http://www.sphinxsearch.com/wiki/doku.php?id=sphinx_chinese_tutorial

register_globals参数在PHP的4.2.0及以上版本中默认为屏蔽。虽然这并不认为是一个安全漏洞,但是的确是一个安全风险。因此,应该始终在开发过程中屏蔽register_globals。
为什么这是一个安全风险?每一种情形都需要的单独说明才能描述清楚,对于所有情形只给出一个恰当的例子是非常困难的。不管怎样,最常见的例子是在PHP手册中描述的:
当参数register_globals开启的时候,这个页面可以使用?authorized=1的参数访问,从而绕过访问控制。当然,这个明显的漏洞是糟糕的开发造成的,而不是register_globals的原因,但是这明显增加了产生危险漏洞的可能。消除了这个影响,普通的全局变量(比如本例中的$authorized)将不再受到客户端提交的数据的影响。最好的方式是初始化全部变量并且将参数error_reporting设置为E_ALL,这样使用未初始化的变量就不会在开发的时候被忽略。 阅读全文
Ryan 发表于 星期六, 四月/11/2009 | PHP |
2 条留言
标签:PHP安全风险, register_globals

标头(header)是服务器以 HTTP 协义传 HTML 资料到浏览器前所送出的字串,在标头与 HTML 文件之间尚需空一行分隔。有关HTTP 的详细说明,可以参 RFC 2068 官方文件(http://www.w3.org/Protocols/rfc2068/rfc2068)。在 PHP 中送回HTML 资料前,需先
传完所有的标头。
注意: 传统的标头一定包含下面三种标头之一,并只能出现一次。
阅读全文

在PHP手册里是这样解析的:
//返回一个常量的值
mixed constant(string $name)
constant()是一个非常有用的函数。当你想获得一个常量的值,即又不知道该常量的名字的时候,比如这个常量的名字保存在一个变量中,或者该变量名是被一个函数返回的。
PHP手册里的例子是这样的:
都怪这个例子不好,没有很好的说明constant()的用途,我曾经也对这个函数感到莫名其妙,有一天无意间看到某个系统的代码(不记得是哪个了),才知道constant()是怎么用的。
阅读全文

explode() – 切开字符串
语法 : array explode (string separator, string string [, int limit])
说明 : 传回一个字符串的数组,以参数 separator为界线将参数 string切开,如果有设定参数 limit,则传回的数组最多将会包含 limit个元素,而最后一个元素将会包含 string全部剩余的部份。
Example:
注意:在被切字符串中分隔符是什么,在explode()中就要用相应的符号。如上面代码$pizza中用是“ ”在explode (” “, $pizza)就要用“ ”,再如下面的代码,在$a中用的是“.” 则explode (“.”, $a)用的也是“.”
Ryan 发表于 星期三, 三月/18/2009 | PHP |
0 条留言
标签:explode(), PHP函数, 切开字符

window下安装php_curl支持
1.找到php.ini,修改extension=php_curl.dll 把前面的分号去掉。
2.把php_curl.dll、libeay32.dll、ssleay32.dll 复制到 %windir%/system32下,重启php的服务。
linux下安装php_curl支持
如果php已经在系统编译好,后来又需要添加新的扩展。一种方式就是重新完全编译php,另一种方式就是单独编译扩展库,以extension的形式扩展。下面以安装curl扩展为例:
1、下载curl安装包。(我的php是4.4.4的,下载最新的curl 7.16 不能使用,最后下载7.14的才可以,所以要注意一下版本问题)
php要求curl的目录要有include和lib目录,并且include下要有easy.h 和curl.h两个文件,lib下要有libcurl.a。经编译后include下的文件有了,但是lib目录下没有。原来生成到lib/.libs目录下,所以要copy到lib目录
2、进入安装原php的源码目录
就会在PHPDIR/ext/curl/moudles/下生成curl.so的文件。
3、复制curl.so文件到extensions的配置目录,修改php.ini就好了 。
字符串转换类函数
addcslashes函数:以C语言风格使用反斜线转义字符串中的字符
addslashes函数:使用反斜线引用字符串
chop函数:清除字符串中的连续空格
get_html_translation_table函数:返回htmlspecialchars()函数和htmlentities()函数的转换表
chunk_split函数:将字符串分割成小块
hebrev函数:转换希伯来逻辑字符为可见字符
hebrevc函数:转换希伯来语文本为可见文本,包括换行符
html_entity_decode函数:转换HTML字符编码为字符
htmlentities函数:转换字符为HTML字符编码
htmlspecialchars_decode函数:转换特殊HTML字符编码为字符
htmlspecialchars函数:转换特殊字符为HTML字符编码
nl2br函数:将换行字符转换成“<br>”
quotemeta函数:加入引用符
rtrim函数:清除字符串末尾的空白(或其他字符)
strip_tags函数:清除HTML及PHP的标记
stripcslashes函数:将用addslashes()函数处理后的字符串原样返回
stripslashes函数:清除字符串中的反斜线
strtolower函数:将字符串中的字母全部转换为小写
strtoupper函数:将字符串中的字母全部转换为大写
trim函数:截取字符串首尾的空格(或其他字符) 阅读全文

AJAX传送和接收中文参数时,如果不在客户端和服务器做相应的处理就会出现乱码问题,在网上相应的文章也不少,但是有的情况下很难从中找到符合自己理想的答案,我今天就是在网上找了很多,但是都差不多,讲ASP和JSP的比较多(我是用的PHP),所以到最后都没找到自己满意的答案。
众所周知,使用AJAX的中文乱码可以大概分为两中,第一种是向服务器端发送中文参数时(xmlhttp.open(“get|post”,url,true)),服务器端接收到的为乱码,这个也是我今天遇到的问题,没做处理之前,在IE里是正常的,但是在Firefox里面就出现了乱码,我先把接收到参数输出到一个文本里,没有发现什么问题,郁闷了,然后我就把查询语句在输出来观察(我这里是要从数据库里查出与参数相关的东西),终于发现问题,IE和Firefox输出的参数不一样,虽然汉字上都一样,但是和前后连接上有细小的区别,于是认定了是编码问题,在网上查找了相关资料,都没能解决问题,但是得到一些启示,因为AJAX发送数据都是采用UTF-8编码的方式发送的,所以要在服务器端进行编码转换(我这里页面是采用GB2312编码的,如果是采用UTF-8的话应该不会有这步的问题),所以我在服务器端进行了UTF-8转GB2312。 阅读全文
首页:
([field:pubdate function='strftime("%m-%d",@me)'/])==(5-15)
([field:pubdate function='strftime("%b %d, %Y",@me)'/])==(May 15, 2008)
Ryan 发表于 星期二, 十月/21/2008 | PHP |
0 条留言
标签:DedeCMS, strftime函数, 日期格式