• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

杂项函数库

发布: 2007-7-14 19:53 | 作者: 佚名    | 来源: 网络转载     | 查看: 8次 | 进入软件测试论坛讨论

领测软件测试网
所有很难在 PHP 函数中归类的函数都属于本函数库。


connection_aborted: 若链接中断则返回 true。
connection_status: 取得连接状态。
connection_timeout: 若超过 PHP 程序执行时间则返回 true。
eval: 将值代入字符串之中。
extract: 汇入数组到符号表。
die: 输出信息并中断 PHP 程序。
exit: 结束 PHP 程序。
function_exists: 查核函数是否已定义。
ignore_user_abort: 连接中断后程序是否执行。
iptcparse: 使用 IPTC 模块解析位资料。
leak: 泄出内存。
pack: 压缩资料到位字符串之中。
register_shutdown_function: 定义 PHP 程序执行完成后执行的函数。
serialize: 储存资料到系统中。
sleep: 暂停执行。
unpack: 解压缩位字符串资料。
unserialize: 取出系统资料。
uniqid: 产生只一的值。
usleep: 暂停执行。

connection_aborted
若链接中断则返回 true。
语法: int connection_aborted(void);
返回值: 整数
函数种类: 网络系统
内容说明: 若与客户端 (Client) 失去链接则返回 true 值。本函数不须输入参数。

connection_status
取得连接状态。
语法: int connection_status(void);
返回值: 整数
函数种类: 网络系统
内容说明: 本函数可返回连接状态。使用时不须输入参数。

connection_timeout
若超过 PHP 程序执行时间则返回 true。
语法: int connection_timeout(void);
返回值: 整数
函数种类: PHP 系统功能
内容说明: 若 PHP 程序 (script) 执行时间超过配置值则返回 true。使用时不须输入参数。

eval
将值代入字符串之中。
语法: void eval(string code_str);
返回值: 无
函数种类: 资料处理
内容说明: 本函数可将字符串之中的变量值代入,通常用在处理数据库的资料上。参数 code_str 为欲处理的字符串。值的注意的是待处理的字符串要符合 PHP 的字符串格式,同时在结尾处要有分号。使用本函数处理后的字符串会沿续到 PHP 程序结束。
使用范例
<?php
$string = '杯子';
$name = '咖啡';
$str = '这个 $string 中装有 $name.<br>';
echo $str;
eval( "\$str = \"$str\";" );
echo $str;
?>
本例的返回值为
这个 $string 中装有 $name.
这个 杯子 中装有 咖啡.

extract
汇入数组到符号表。
语法: void extract(array var_array, int [extract_type], string [prefix]);
返回值: 无
函数种类: 资料处理
内容说明: 本函数用来汇入数组变量到目前使用的符号表之中。参数 var_array 为待汇入的数组变量。参数 extract_type 为输出的类型,内定值为 EXTR_OVERWRITE,见下粗体部分

EXTR_OVERWRITE 遇相同的变量名则取而代之。
EXTR_SKIP 遇相同的变量名则略过不取代。
EXTR_PREFIX_SAME 遇相同的变量名则取新变量名称。
EXTR_PREFIX_ALL 全部取新的变量名称。


参数 prefix 为参数 extract_type 值为 EXTR_PREFIX_SAME 或者 EXTR_PREFIX_ALL 时,用来加在变量名称前的字符串。
使用范例
本例返回值为 红色, 大号, 弧型, 中号,其中的 size 变量不变。<?
$size = "大号";
$var_array = array("color" => "红色",
"size" => "中号",
"shape" => "弧型");
extract($var_array, EXTR_PREFIX_SAME, "new");
print "$color, $size, $shape, $new_size\n";
?>

die
输出信息并中断 PHP 程序。
语法: void die(string message);
返回值: 无
函数种类: PHP 系统功能
内容说明: 本函数将送出字符串到浏览器并中断 PHP 程序 (Script)。参数 message 为欲送出的字符串。
使用范例
下例中,若无法打开 /etc/shadow 时,传给浏览器抱歉,无法打开: /etc/shadow。
<?php
$filename = "/etc/shadow";
$file = @fopen($filename, 'r')
or die("抱歉,无法?/font>}启: $filename");
echo "本行不会执行";
?>

exit
结束 PHP 程序。
语法: void exit(void);
返回值: 无
函数种类: PHP 系统功能
内容说明: 本函数直接结束 PHP 程序 (Script)。不需输入参数,亦无返回值。

function_exists
检查函数是否已定义。
语法: int function_exists(string function_name);
返回值: 整数
函数种类: PHP 系统功能
内容说明: 本函数用来检查指定的函数是否已经定义。参数 function_name 为待检查的函数名称。若已定义指定的函数则返回 true 值,其它情形均返回 false 值。

ignore_user_abort
连接中断后程序是否执行。
语法: int ignore_user_abort(int [setting]);
返回值: 整数
函数种类: PHP 系统功能
内容说明: 本函数配置或取得使用端连接中断后,PHP 程序是否仍继续执行。默认值为中断连接后就停止执行。在 PHP 配置文件中 (php3.ini/php.ini) 的 ignore_user_abort 选项就是配置处。本功能在 PHP 3.0.7 版之后才开始提供。

iptcparse
使用 IPTC 模块解析位资料。
语法: array iptcparse(string iptcblock);
返回值: 数组
函数种类: 图形处理
内容说明: 本函数利用 IPTC 模块解析图形的位资料中的 APP13 信息。IPTC 模块可到 http://www.xe.net/iptc 下载。若执行失败或者没有 APP13 的 IPTC 资料时返回 false。
使用范例
<?php
$size = GetImageSize("testimg.jpg",&$info);
if (isset($info["APP13"])) {
$iptc = iptcparse($info["APP13"]);
var_dump($iptc);
}
?>

leak
泄出内存。
语法: void leak(int bytes);
返回值: 无
函数种类: PHP 系统功能
内容说明: 本函数用来系统除错使用。通常在执行某一回应后可自动清除泄出的内存。

pack
压缩资料到位字符串之中。
语法: string pack(string format, mixed [args]...);
返回值: 字符串
函数种类: 资料处理
内容说明: 本函数用来将资料压缩打包到位的字符串之中。本函数和 Perl 的同名函数功能用法完全相同。参数 format 为压缩的格式,见下面粗体部分:

a 将字符串空白以 NULL 字符填满
A 将字符串空白以 SPACE 字符 (空格) 填满
h 十六进位字符串,低位在前
H 十六进位字符串,高位在前
c 有号字符
C 无号字符
s 有号短整数 (十六位,依计算机的位顺序)
S 无号短整数 (十六位,依计算机的位顺序)
n 无号短整数 (十六位, 高位在后的顺序)
v 无号短整数 (十六位, 低位在后的顺序)
i 有号整数 (依计算机的顺序及范围)
I 无号整数 (依计算机的顺序及范围)
l 有号长整数 (卅二位,依计算机的位顺序)
L 无号长整数 (卅二位,依计算机的位顺序)
N 无号短整数 (卅二位, 高位在后的顺序)
V 无号短整数 (卅二位, 低位在后的顺序)
f 单精确浮点数 (依计算机的范围)
d 倍精确浮点数 (依计算机的范围)
x 空位
X 倒回一位
@ 填入 NULL 字符到绝对位置

使用范例
<?php
print(pack("cccc", 65, 66, 67, 68));
echo "<br>\n";
print(pack("h10", "778899aabb"));
echo "<br>\n";
print(pack("H10", "778899aabb"));
?>

参考: unpack()

register_shutdown_function
定义 PHP 程序执行完成后执行的函数。
语法: int register_shutdown_function(string func);
返回值: 整数
函数种类: PHP 系统功能
内容说明: 本函数向系统定义 PHP 程序 (Script) 执行结束之后所要执行的函数。当执行该指定的函数时,由于无法看到返回值,因此调试较困难。

serialize
储存资料到系统中。
语法: string serialize(mixed value);
返回值: 字符串
函数种类: 资料处理
内容说明: 本函数可储存资料到系统中。储存的资料以 byte-stream 方式存放。变量 value 为混合类型,包括整数、倍精确浮点数字符串、数组以及类的属性 (类的方法无法储存)。
参考: unserialize()

sleep
暂停执行。
语法: void sleep(int seconds);
返回值: 无
函数种类: PHP 系统功能
内容说明: 本函数可暂时使程序停止执行。参数 seconds 为要暂停的秒数。
参考: usleep()

unpack
解压缩位字符串资料。
语法: string pack(string format, mixed [args]...);
返回值: 数组
函数种类: 资料处理
内容说明: 本函数用来将位的字符串的资料解压缩。本函数和 Perl 的同名函数功能用法完全相同。参数 format 为压缩的格式,参见 pack 的格式表。
参考: pack()

unserialize
取出系统资料。
语法: mixed unserialize(string str);
返回值: 混合类型资料
函数种类: 资料处理
内容说明: 本函数可取出系统资料。储存的资料以 byte-stream 方式存放。返回值为混合类型,包括整数、倍精确浮点数字符串、数组以及类的属性 (类的方法无法储存)。
使用范例
<?php
$conn = odbc_connect("webdb", "php", "chicken");
$stmt = odbc_prepare($conn, "SELECT data FROM sessions WHERE id = ?");
$sqldata = array($PHP_AUTH_USER);
if (!odbc_execute($stmt, &$sqldata) || !odbc_fetch_into($stmt, &$tmp)) {
// 若执行则 $session_data 设为空值
$session_data = array();
} else {
// 取出 $tmp[0] 值
$session_data = unserialize($tmp[0]);
if (!is_array($session_data)) {
// 出现错误则将 $session_data 清除
$session_data = array();
}
}
?>
参考: serialize()

uniqid
产生只一的值。
语法: string uniqid(string prefix);
返回值: 字符串
函数种类: 编码处理
内容说明: 本函数会依据当时的毫秒以及指定的前置字符串产生一个独一无二的字符串。参数 prefix 为前置的字符串,最多可达 114 字符。
使用范例
本例产生 32 个字符的独一无二字符串。
<?php
$token = md5(uniqid(rand()));
echo $token;
?>

usleep
暂停执行。
语法: void usleep(int micro_seconds);
返回值: 无
函数种类: PHP 系统功能
内容说明: 本函数可暂时使程序停止执行。参数 micro_seconds 为要暂停的毫秒数。
参考: sleep()

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网