PHP函数ereg与preg的区别
1、ereg里面是不需要也不能使用分隔符和修饰符的,所以ereg的功能比preg要弱上不少。
2、关于".":点在正则里面一般是除了换行符以外的全部字符,但是在ereg里面的"."是任意字符,即包括换行符!如果在preg里面希望"."
能够包括换行符,可以在修饰符中加上"s"。
3、ereg默认使用贪婪模式,并且不能修改,这个给很多替换和匹配带来麻烦。
4、速度:这个或许是很多人关心的问题,会不会preg功能强大是以速度来换取的?不用担心,preg的速度要远远比ereg快,笔者做了一个程序测
试:
<?php
echo
"Preg_replace used
time:"
;
$start
=
time
();
for(
$i
=
1
;
$i
<=
100000
;
$i
++) {
$str
=
"ssssssssssssssssssssssssssss"
;
preg_replace
(
"/s/"
,
""
,
$str
);
}
$ended
=
time
()-
$start
;
echo
$ended
;
echo
"ereg_replace used
time:"
;
$start
=
time
();
for(
$i
=
1
;
$i
<=
100000
;
$i
++) {
$str
=
"ssssssssssssssssssssssssssss"
;
ereg_replace
(
"s"
,
""
,
$str
);
}
$ended
=
time
()-
$start
;
echo
$ended
;
echo
"str_replace used
time:"
;
$start
=
time
();
for(
$i
=
1
;
$i
<=
100000
;
$i
++) {
$str
=
"sssssssssssssssssssssssssssss"
;
str_replace
(
"s"
,
""
,
$str
);
}
$ended
=
time
()-
$start
;
echo
$ended
;
?>
结果:
Preg_replace used time:5
ereg_replace used time:15
str_replace used time:2
str_replace因为不需要匹配所以速度非常快,而preg_replace的速度比ereg_replace要快上不少。
关于PHP3.0对于preg的支持
在PHP
4.0中默认加入了preg支持,但是在3.0中确没有。如果在3.0中希望使用preg函数,必须加载php3_pcre.dll文件,只要在
php.ini的extension部分设置加入"extension
= php3_pcre.dll"然后从新启动PH
相关文档:
一:结构和调用(实例化):
class className{} ,调用:$obj = new className();当类有构造函数时,还应传入参数。如$obj = new className($v,$v2...);
二:构造函数和析构函数:
1、构造函数用于初始化:使用__construct(),可带参数。
2、但析构函数不能带参数(用于在销去一个类之前执行一些操作或功能)。析构函数用 ......
1.php数组基础:
<?php
$ary2 = "zqhung_hongzequan_zqhong";
$arr3 =explode("_",$ary2);//拆分字符串
echo $arr3[1];//打印出来的结果是hongzequan
$ary1 = array("aa","bb");
$ary1[0]="zqhung";//修改数组中的值
echo $ary1[0],"<br>";//打印出来的结果是zqhung
$ary3 = array("id"=>55);
......
准备:
lighttpd-1.4.15.tar.gz
php-4.4.2.tar.gz
mysql-5.0.20a.tar.gz
开始:
1 编译安装lighttpd
# tar zxvf lighttpd-1.4.15.tar.gz
# cd lighttpd-1.4.15
# ls
# ./configure --prefix=/usr/local/lighttpd //此部无法编译时提示安装prce-devel
#&nbs ......
PHP取得成功的一个主要原因之一是她拥有大量的可用扩展。web开发者无论有何种需求,这种需求最有可能在PHP发行包里找到。PHP发行包包括支持各种数据库,图形文件格式,压缩,XML技术扩展在内的许多扩展。
扩展API的引入使PHP取得了巨大的进展,扩展API机制使PHP开发社区很容易的开发出几十种扩展。。扩展主要的思想是 ......
<?php
function delfile($dir,$n) //删除DIR路径下N天前创建的所有文件;
{
if(is_dir($dir))
{
if($dh=opendir($dir))
{
while (false !== ($file = readdir($dh)))
{
if($file!="." && $file!="..")
{
$fullpath=$dir."/".$file;
if(!is_dir($fullpath)) ......