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

PHP
一贴学会PHP 新手入门教程
用PHP的ob_start() 控制您的浏览器cache
谈谈新手如何学习PHP 默默经典版本
黑夜路人出的几道php笔试题
一些 PHP 管理系统程序中的后门
用php获取本周,上周,本月,上月,本季度日期的代码
PHP 简单数组排序实现代码
PHP 多维数组排序实现代码
php 全局变量范围分析
php_xmlhttp 乱码问题解决方法
PHP 数组学习排序全接触
php Sql Server连接失败问题及解决办法
PHP 翻页 实例代码
php 随机数的产生、页面跳转、件读写、文件重命名、switch语句
PHP 5.3.0 安装分析心得
php 生成WML页面方法详解
php 取得瑞年与平年的天数的代码
php empty函数 使用说明
php natsort内核函数浅析
PHP 源代码分析 Zend HashTable详解

PHP 中的 php4新函数集锦


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 151 ::
收藏到网摘: 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的功能是复制,而不是阵列它本身,因此并不会改变阵列指针 
下面范例的功能都是