当前位置: 首页 > 图文教程 > 网络编程 > PHP > php4新函数集锦

PHP
php 多线程上下文中安全写文件实现代码
PHP类的使用 实例代码讲解
用php实现让页面只能被百度gogole蜘蛛访问的方法
php 学习笔记
PHP编程过程中需要了解的this,self,parent的区别
php 操作excel文件的方法小结
使用PHP获取网络文件的实现代码
PHP 巧用数组降低程序的时间复杂度
php下将XML转换为数组
php 文件上传代码(限制jpg文件)
php 无极分类(递归)实现代码
PHP 采集获取指定网址的内容
PHP 将图片按创建时间进行分类存储的实现代码
PHP 存储文本换行实现方法
PHP 批量更新网页内容实现代码
用PHP查询搜索引擎排名位置的代码
用php实现的获取网页中的图片并保存到本地的代码
php实现首页链接查询 友情链接检查的代码
处理php自动反斜杠的函数代码
php实现的遍历文件夹下所有文件,编辑删除

PHP 中的 php4新函数集锦


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 34 ::
收藏到网摘: n/a

一、输出信息控制函数 


这些函数可以让你控制你的脚本输出的内容.可以用于许多不同的情况,特别是在你的脚本已经输出信息后需要发送文件头新的情况.  输出控制函数不对使用  header()  或  setcookie()  发送的文件头信息产生影响,只对那些类似于  echo()  和  PHP  代码的数据块有作用. 

例  1.  控制输出 

<?php 
 
ob_start(); 
echo  "Hellon"; 
 
setcookie  ("cookiename",  "cookiedata"); 
 
ob_end_flush(); 
 
?>  

在上面的例子中,使用  echo()  的输出内容将会保存在输出缓冲区中,直到调用了  ob_end_flush().  这样做有意义的地方是,调用  setcookie()  的内容被成功的存储在  cookie  里面而不会引起错误.  (正常情况下,你不可以在有数据已经发送后再发送文件头信息到用户浏览器.) 

相关函数  header()  and  setcookie(). 

韩数列表 
flush  —  刷新输出缓冲区 
保存在输出缓冲区的内容会被发送到浏览器 

ob_start  —  打开输出缓冲区 
这样所有的输出信息不在直接发送到浏览器,而是保存在输出缓冲区里面 

ob_get_contents  —  返回输出缓冲区的内容 
如果你想以后处理输出的内容,可以调用这个函数保留一个备份 

ob_get_length  —  返回输出缓冲区的内容长度 

ob_end_flush  —  结束(发送)输出缓冲区的内容,关闭输出缓冲区 

ob_end_clean  —  删除(放弃)输出缓冲区的内容,关闭输出缓冲区 
如果你的程序发现输出内容有问题,可以放弃所有输出内容,可以防止泄漏某些秘密信息 

ob_implicit_flush  —  打开或关闭直接刷新 
打开后,每个脚本输出都直接发送到浏览器,不再需要调用  flush() 


二、取得当前目录 


这是  php4  的新的目录函数! 

string  getcwd(void) 

返回为当前脚本路径的字符串! 

三、  解决脚本超时 

在  php  的配置/信息里面有一个设置脚本执行时间的函数,具体情况如下: 

set_time_limit 
配置该页最久执行时间。 

语法:  void  set_time_limit(int  seconds); 

返回值:  无 

函数种类:  PHP  系统功能 

内容说明 

本函数用来配置该页最久执行时间。默认值是  30  秒,在  php.ini  中的  max_execution_time  变量配置,若配置为  0  则不限定最久时间。当执行到该函数时,才开始计算。例如,若默认是  30  秒,而在执行到该函数前已执行了  25  秒,而用本函数改为  20  秒,则该页面最长执行时间为  45  秒。 

使用实例: 
我的文章搜索函数由于文章数目的增加,经常会产生超时错误,我把脚本执行时间改为200秒后情况大大缓解! 

<? 
set_time_limit(200); 
?>  


四、  数组遍历 

·  foreach 
在  PHP4中,新增了一个循环语句  foreach,它很像是  perl和其它的语言,你可以给它一个阵列,让它来取出阵列的值。它有下列这二个语法,第二个语法是较次要的,但是可用来作为第一个语法的延伸。 
foreach(array_expression  as  $value)  statement 
foreach(array_expression  as  $key  =>  $value)  statement 
第一个形式的循环,它会在每个循环上,将目前元素的值分配给  $value,并且向后移动阵列的?部指针,所以在下一个循环的时候,你就会看到下一个元素了。 
第二个形式的循环和第一个是相同的,不同的是它会在每个循环将目前元素的索引值分配给变量  $key。 
注意  :  当  foreach第一次开始执行的时候,它会把阵列的?部指针重新设定到阵列的第一个元素,意思是说,在使用  foreach之前,你不必再去调用  reset(  )。 
注意  :  foreach的功能是复制,而不是阵列它本身,因此并不会改变阵列指针 
下面范例的功能都是