荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: jjksam (我是傻瓜...), 信区: Program
标  题: [转载] 四.函数库及函数(下)
发信站: 荔园晨风BBS站 (Thu Dec  6 11:40:45 2001), 转信

【 以下文字转载自 Homepage 讨论区 】
【 原文由 jjksam 所发表 】
InterBase 数据库函数库
-------------------------------------------------------------------------------

本函数库共有 11 个函数
InterBase 是 Inprise 的数据库系统,在 Windows 系统平台上的 Delphi 及 BCB 等开发
工具中附有单机的版本供开发使用。更多有关 InterBase 的信息,可以参考 http:
//www.interbase.com


ibase_connect: 打开 InterBase 服务器连接。
ibase_pconnect: 保持 InterBase 服务器连接。
ibase_close: 关闭 InterBase 服务器连接。
ibase_query: 送出一个 query 字符串。
ibase_fetch_row: 返回单列的各字段。
ibase_free_result: 释放返回占用内存。
ibase_prepare: 分析 SQL 语法。
ibase_bind: 链接 PHP 变量到 InterBase 参数。
ibase_execute: 执行 SQL 的指令部分。
ibase_free_query: 释放查询指令占用内存。
ibase_timefmt: 配置时间格式。

LDAP 目录协议函数库
-------------------------------------------------------------------------------
-



本函数库共有 25 个函数
LDAP (Lightweight Directory Access Protocol) 是一种轻量的目录存取协议,提供客户
从各个角落连接到目录服务器中。在 RFC 1777 及 RFC 1778 中对 LDAP 有较深入的描述
,亦可参考 Netscape 站上有关 LDAP 方面的资料。
在 LDAP 的协议之中,很像硬盘目录结构或倒过来的树状结构。LDAP 的根就是全世界,第
一级是属于国别 (countries) 性质的层级,之后可能会有公司 (organization) 的层级,
接着是部门 (organizationalUnit),再来为个人。而就像文件,每个人都会有所谓的显名
 (distinguished name, 简称 dn),dn 可能像酱子 cn=John Smith,ou=Accounts,o=My
Company,c=US。

<?php
// 本例使用到 connect, bind, search, interpret search
// result, close connection 等等 LDAP 的功能。
echo "<h3>LDAP 搜寻测试</h3>";
echo "连接中 ...";
$ds=ldap_connect("localhost");  // 先连上有效的 LDAP 服务器
echo "连上 ".$ds."<p>";

if ($ds) {
    echo "Binding ...";
    $r=ldap_bind($ds);          // 匿名的 bind,为只读属性
    echo "Bind 返回 ".$r."<p>";
    echo "Searching for (sn=S*) ...";  // 找寻 S 开头的姓氏
    $sr=ldap_search($ds,"o=My Company, c=US", "sn=S*");
    echo "Search 返回 ".$sr."<p>";
    echo "S 开头的姓氏有 ".ldap_count_entries($ds,$sr)." 个<p>";
    echo "取回姓氏资料 ...<p>";
    $info = ldap_get_entries($ds, $sr);
    echo "资料返回 ".$info["count"]." 笔:<p>";
    for ($i=0; $i<$info["count"]; $i++) {
        echo "dn 为: ". $info[$i]["dn"] ."<br>";
        echo "cn 为: ". $info[$i]["cn"][0] ."<br>";
        echo "email 为: ". $info[$i]["mail"][0] ."<p>";
    }
    echo "关闭链接";
    ldap_close($ds);
} else {
    echo "<h4>无法连接到 LDAP 服务器</h4>";
}
?>


欲使用 LDAP 服务器功能要先在 Web 服务器安装 LDAP 客户端程序,较着名的有美国密西
根大学的 ldap-3.3 套件或者是 Netscape 的 Directory SDK。可到下列网址找回来安装



Netscape http://developer.netscape.com/tech/directory/
密西根大学 http://www.umich.edu/~dirsvcs/ldap/index.html
OpenLDAP 计划 http://www.openldap.com
LDAP World http://elvira.innosoft.com/ldapworld



ldap_add: 增加 LDAP 名录的条目。
ldap_mod_add: 增加 LDAP 名录的属性。
ldap_mod_del: 删除 LDAP 名录的属性。
ldap_mod_replace: 新的 LDAP 名录取代旧属性。
ldap_bind: 系住 LDAP 目录。
ldap_close: 结束 LDAP 链接。
ldap_connect: 连上 LDAP 服务器。
ldap_count_entries: 搜寻结果的数目。
ldap_delete: 删除指定资源。
ldap_dn2ufn: 将 dn 转成易读的名字。
ldap_explode_dn: 切开 dn 的字段。
ldap_first_attribute: 取得第一笔资源的属性。
ldap_first_entry: 取得第一笔结果代号。
ldap_free_result: 释放返回资料内存。
ldap_get_attributes: 取得返回资料的属性。
ldap_get_dn: 取得 DN 值。
ldap_get_entries: 取得全部返回资料。
ldap_get_values: 取得全部返回值。
ldap_list: 列出简表。
ldap_modify: 改变 LDAP 名录的属性。
ldap_next_attribute: 取得返回资料的下笔属性。
ldap_next_entry: 取得下一笔结果代号。
ldap_read: 取得目前的资料属性。
ldap_search: 列出树状简表。
ldap_unbind: 结束 LDAP 链接。


电子邮件函数库
-------------------------------------------------------------------------------

本函数库共有 1 个函数
mail: 寄出电子邮件。

数学运算函数库
-------------------------------------------------------------------------------

本函数库共有 33 个函数
本函数库能处理的数值范围只到长整数与倍浮点数的范围。若要处理超过上述范围的数值
,要使用 BC 高精确度函数库。本函数库定义了圆周率的常量 M_PI 值为 3.
14159265358979323846。


Abs: 取得绝对值。
Acos: 取得反余弦值。
Asin: 取得反正弦值。
Atan: 取得反正切值。
Atan2: 计算二数的反正切值。
base_convert: 转换数字的进位方式。
BinDec: 二进位转成十进位。
Ceil: 计算大于指定数的最小整数。
Cos: 余弦计算。
DecBin: 十进位转二进位。
DecHex: 十进位转十六进位。
DecOct: 十进位转八进位。
Exp: 自然对数 e 的次方值。
Floor: 计算小于指定数的最大整数。
getrandmax: 随机数的最大值。
HexDec: 十六进位转十进位。
Log: 自然对数值。
Log10: 10 基底的对数值。
max: 取得最大值。
min: 取得最小值。
mt_rand: 取得随机数值。
mt_srand: 配置随机数种子。
mt_getrandmax: 随机数的最大值。
number_format: 格式化数字字符串。
OctDec: 八进位转十进位。
pi: 圆周率。
pow: 次方。
rand: 取得随机数值。
round: 四舍五入。
Sin: 正弦计算。
Sqrt: 开平方根。
srand: 配置随机数种子。
Tan: 正切计算。

mcrypt 编码函数库
-------------------------------------------------------------------------------
-



本函数库共有 8 个函数
要使用本函数库要先准备 mcrypt 程序,可以到 ftp://argeas.cs-net.
gr/pub/unix/mcrypt 下载这个程序 libmcrypt-x.x.tar.gz。同时在编译 PHP 程序时需要
加入 --with-mcrypt 的选项,俾使本函数库能顺利运作。
本函数提供的编码方式有 DES、TripleDES、Blowfish (默认值)、3-WAY、SAFER-SK64、
SAFER-SK128、TWOFISH、TEA、RC2 及使用 CBC, OFB, CFB, ECB 作为密码检索的 GOST。
此外还有 RC6 及 IDEA 等非免费的编码方式。见下面列示为已定义的密码:


MCRYPT_BLOWFISH
MCRYPT_DES
MCRYPT_TripleDES
MCRYPT_ThreeWAY
MCRYPT_GOST
MCRYPT_CRYPT
MCRYPT_DES_COMPAT
MCRYPT_SAFER64
MCRYPT_SAFER128
MCRYPT_CAST128
MCRYPT_TEAN
MCRYPT_RC2
MCRYPT_TWOFISH (mcrypt 2.x 前的版本用)
MCRYPT_TWOFISH128 (mcrypt 2.x 后的版本用)
MCRYPT_TWOFISH192
MCRYPT_TWOFISH256
MCRYPT_RC6
MCRYPT_IDEA
在密码检索本 (cipher) 方面,本函库支持 CBC、OFB、CFB 与 ECB 四种密码检索本。这
四种密码检索本的简单叙述如下,更详细的信息请参考 Schneier 所着作的 Applied
Cryptography (ISBN: 0-471-11709-9):


ECB (electronic codebook): 适合随机的资料,例如使用另外的密钥。若资料量少且随机
时,使用 ECB 较不适合。
CBC (cipher block chaining): 适合文件的加密,安全性较 ECB 好。
CFB (cipher feedback): 适合对位组资料流中的某段独立位组资料 (single bytes) 加密

OFB (output feedback): 与 CFB 相容,尤其适合在无法忍受错误波及的应用上。
目前 PHP 仍无法对单位 (bit) 的熵值做加密解密的步骤,目前只适合对字符串作密码处
理。

在使用 CFB 及 OFB 二种模式时,必须要向量初始化 (Initialization vector, IV),CBC
 模式也可以使用向量初始化。向量初始化的值在加解密时必须是独一无二的,同时也要保
持相同。当加密后的资料输出时,也可同时输出密码钥匙 (例如存在文件中);或者也可以
将向量初始化的值与加密后的资料一起输出。



mcrypt_get_cipher_name: 取得编码方式的名称。
mcrypt_get_block_size: 取得编码方式的区块大小。
mcrypt_get_key_size: 取得编码钥匙大小。
mcrypt_create_iv: 从随机源将向量初始化。
mcrypt_cbc: 使用 CBC 将资料加/解密。
mcrypt_cfb: 使用 CFB 将资料加/解密。
mcrypt_ecb: 使用 ECB 将资料加/解密。
mcrypt_ofb: 使用 OFB 将资料加/解密。



mhash 哈稀函数库
-------------------------------------------------------------------------------
-



本函数库共有 4 个函数
本函数库支持多种哈稀演算法,例如最出名的 MD5、SHA1 或 GOST,还有其它多种的哈稀
演算法,列示如下:

MHASH_MD5
MHASH_SHA1
MHASH_HAVAL
MHASH_RIPEMD160
MHASH_RIPEMD128
MHASH_SNEFRU
MHASH_TIGER
MHASH_GOST
MHASH_CRC32
MHASH_CRC32B
欲使用本函数库要先下载 mhash-x.x.x.tar.gz,网址为 http://sasweb.de/mhash。当然
还要编译 mhash 程序库,之后才能编译 PHP 程序,在编译 PHP 程序时,记得要加
--with-mhash 选项打开系统的 mhash 功能。

本函数库适合用来产生检查码 (checksums)、数位代信息或者其它功能,如下例:

<?php
$input = "Let us meet at 9 o' clock at the secret place.";
$hash = mhash(MHASH_SHA1, $input);
print "哈稀值为 ".bin2hex($hash)."\n";
?>


在浏览器看到的字符串是

哈稀值为 d3b85d710d8f6e4e5efd4d5e67d041f9cecedafe



mhash_get_hash_name: 取得哈稀演算法名称。
mhash_get_block_size: 取得哈稀方式的区块大小。
mhash_count: 取得哈稀 ID 的最大值。
mhash: 计算哈稀值。


杂项函数库
-------------------------------------------------------------------------------
-



本函数库共有 19 个函数
所有很难在 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: 暂停执行。


mSQL 数据库函数库
-------------------------------------------------------------------------------
-



本函数库共有 40 个函数
mSQL 是个小巧的数据库系统,可以到 http://www.hughes.com.au 取得更多有关 mSQL 数
据库的详情。


msql: 送出 query 字符串。
msql_affected_rows: 得到 mSQL 最后操作影响的列数目。
msql_close: 关闭 mSQL 数据库连接。
msql_connect: 打开 mSQL 数据库连接。
msql_create_db: 建立一个新的 mSQL 数据库。
msql_createdb: 建立一个新的 mSQL 数据库。
msql_data_seek: 移动内部返回指针。
msql_dbname: 取得目前所在数据库名称。
msql_drop_db: 删除指定的 mSQL 数据库。
msql_dropdb: 删除指定的 mSQL 数据库。
msql_error: 取得最后错误信息。
msql_fetch_array: 返回数组资料。
msql_fetch_field: 取得字段信息。
msql_fetch_object: 返回类资料。
msql_fetch_row: 返回单列的各字段。
msql_fieldname: 返回指定字段的名称。
msql_field_seek: 配置指针到返回值的某字段。
msql_fieldtable: 获得字段的资料表 (table) 名称。
msql_fieldtype: 获得字段的类型。
msql_fieldflags: 获得字段的标志。
msql_fieldlen: 获得字段的长度。
msql_free_result: 释放返回占用内存。
msql_freeresult: 释放返回占用内存。
msql_list_fields: 列出指定资料表的字段 (field)。
msql_listfields: 列出指定资料表的字段 (field)。
msql_list_dbs: 列出可用数据库 (database)。
msql_listdbs: 列出可用数据库 (database)。
msql_list_tables: 列出指定数据库的资料表 (table)。
msql_listtables: 列出指定数据库的资料表 (table)。
msql_num_fields: 取得返回字段的数目。
msql_num_rows: 取得返回列的数目。
msql_numfields: 取得返回字段的数目。
msql_numrows: 取得返回列的数目。
msql_pconnect: 打开 mSQL 服务器持续连接。
msql_query: 送出一个 query 字符串。
msql_regcase: 将字符串逐字返回大小写字符。
msql_result: 取得查询 (query) 的结果。
msql_select_db: 选择一个数据库。
msql_selectdb: 选择一个数据库。
msql_tablename: 返回指定资料表的名称。



-------------------------------------------------------------------------------
-
 SQL Server 数据库函数库
-------------------------------------------------------------------------------
-



本函数库共有 16 个函数
SQL Server 是 Microsoft 从 SyBASE 取得并修改的数据库系统,它只能在 Windows NT
Server 上面执行。使用本函数只能使用 Windows NT Server 作为 PHP 的执行平台。
Microsoft SQL Server 的 query 语法为 Transact-SQL,和 SyBASE 的语法几乎相同。本
数据库可能是所有 PHP 所支持数据库中,中文书籍最多的数据库了。



mssql_affected_rows: 取得最后 query 影响的列数。
mssql_close: 关闭与数据库的连接。
mssql_connect: 连上数据库。
mssql_data_seek: 移动列指针。
mssql_fetch_array: 返回数组资料。
mssql_fetch_field: 取得字段信息。
mssql_fetch_object: 返回类资料。
mssql_fetch_row: 返回单列的各字段。
mssql_field_seek: 配置指针到返回值的某字段。
mssql_free_result: 释放返回占用内存。
mssql_num_fields: 取得返回字段的数目。
mssql_num_rows: 取得返回列的数目。
mssql_pconnect: 打开 MS SQL 服务器持续连接。
mssql_query: 送出一个 query 字符串。
mssql_result: 取得查询 (query) 的结果。
mssql_select_db: 选择一个数据库。


MySQL 数据库函数库
-------------------------------------------------------------------------------
-



本函数库共有 32 个函数
本函数库供存取 MySQL 数据库。有关 MySQL 的细节,及下载 MySQL 数据库,请到这个网
址 http://www.mysql.com。而网络上也有许多提供处理 MySQL 的用户界面程序,建议到
 http://www.phpwizard.net/phpMyAdmin 下载 phpMyAdmin,可以使用浏览器操作及管理
 MySQL。整套 phpMyAdmin 程序,是用 PHP3 完成的,亦可同时研究 PHP3 与 MySQL 的链
接。


mysql_affected_rows: 得到 MySQL 最后操作影响的列数目。
mysql_close: 关闭 MySQL 服务器连接。
mysql_connect: 打开 MySQL 服务器连接。
mysql_create_db: 建立一个 MySQL 新数据库。
mysql_data_seek: 移动内部返回指针。
mysql_db_query: 送查询字符串 (query) 到 MySQL 数据库。
mysql_drop_db: 移除数据库。
mysql_errno: 返回错误信息代码。
mysql_error: 返回错误信息。
mysql_fetch_array: 返回数组资料。
mysql_fetch_field: 取得字段信息。
mysql_fetch_lengths: 返回单列各栏资料最大长度。
mysql_fetch_object: 返回类资料。
mysql_fetch_row: 返回单列的各字段。
mysql_field_name: 返回指定字段的名称。
mysql_field_seek: 配置指针到返回值的某字段。
mysql_field_table: 获得目前字段的资料表 (table) 名称。
mysql_field_type: 获得目前字段的类型。
mysql_field_flags: 获得目前字段的标志。
mysql_field_len: 获得目前字段的长度。
mysql_free_result: 释放返回占用内存。
mysql_insert_id: 返回最后一次使用 INSERT 指令的 ID。
mysql_list_fields: 列出指定资料表的字段 (field)。
mysql_list_dbs: 列出 MySQL 服务器可用的数据库 (database)。
mysql_list_tables: 列出指定数据库的资料表 (table)。
mysql_num_fields: 取得返回字段的数目。
mysql_num_rows: 取得返回列的数目。
mysql_pconnect: 打开 MySQL 服务器持续连接。
mysql_query: 送出一个 query 字符串。
mysql_result: 取得查询 (query) 的结果。
mysql_select_db: 选择一个数据库。
mysql_tablename: 取得资料表名称。



-------------------------------------------------------------------------------
-
 Sybase 数据库函数库
-------------------------------------------------------------------------------
-



本函数库共有 16 个函数
这个函数库和 SQL Server 数据库函数库几乎完全相同,实际上是本函数先出现,之后才
出现 SQL Server 数据库函数库。而就用户观点 Sybase 和 MS SQL Server 6.x 也是几乎
相同的。当然 MS SQL Server 7.0 之后的差异就比较大了。


sybase_affected_rows: 取得最后 query 影响的列数。
sybase_close: 关闭与数据库的连接。
sybase_connect: 连上数据库。
sybase_data_seek: 移动列指针。
sybase_fetch_array: 返回数组资料。
sybase_fetch_field: 取得字段信息。
sybase_fetch_object: 返回类资料。
sybase_fetch_row: 返回单列的各字段。
sybase_field_seek: 配置指针到返回值的某字段。
sybase_free_result: 释放返回占用内存。
sybase_num_fields: 取得返回字段的数目。
sybase_num_rows: 取得返回列的数目。
sybase_pconnect: 打开服务器持续连接。
sybase_query: 送出一个 query 字符串。
sybase_result: 取得查询 (query) 的结果。
sybase_select_db: 选择一个数据库。


网络函数库
-------------------------------------------------------------------------------

本函数库共有 13 个函数
fsockopen: 打开网络的 Socket 链接。
pfsockopen: 打开网络的 Socket 持续链接。
set_socket_blocking: 切换阻塞与无阻塞模式。
gethostbyaddr: 返回机器名称。
gethostbyname: 返回 IP 网址。
gethostbynamel: 返回机器名称的所有 IP。
checkdnsrr: 检查指定网址的 DNS 记录。
getmxrr: 取得指定网址 DNS 记录之 MX 字段。
openlog: 打开系统纪录。
syslog: 纪录至系统纪录。
closelog: 关闭系统纪录。
debugger_on: 使用内建的 PHP 调试器。
debugger_off: 关闭内建的 PHP 调试器。


NIS 函数库
-------------------------------------------------------------------------------
-



本函数库共有 8 个函数
NIS 的全名为 Network Information System,另外一个说法就是 YP (Yellow Pages)。
NIS 或 YP 可以让许多不同的 UNIX 机器拥有相同的系统信息,例如相同的用户帐号密码
,使系统管理人员及用户都容易在不同的机器间穿梭,不可避免的,会有安全上的缺点,
不过安全就不是这儿所讨论的了。而关于 NIS 方面的中英文书籍在市面上都可以找到,或
者也可以参考 http://www.desy.de/~sieversm/ypdoku/ypdoku/ypdoku.html。
欲使用 NIS 函数库,记得要在编译 PHP 时将 YP 的选项打开,即加上 --with-yp 选项。

yp_get_default_domain: 取得机器的 Domain。
yp_order: 返回 map 的序数。
yp_master: 取得 NIS 的 Master。
yp_match: 取得指定资料。
yp_first: 返回 map 上第一笔符合的资料。
yp_next: 指定 map 的下笔资料。
yp_errno: 取得先前 YP 操作的错误码。
yp_err_string: 取得先前 YP 操作的错误字符串。


ODBC 数据库链接函数库
-------------------------------------------------------------------------------
-



本函数库共有 25 个函数
开放资料链接 (Open Database Connectivity, ODBC) 是链接数据库的共通界面。ODBC 是
由微软主导的数据库链接标准,实作环境也以微软的系统最成熟。在 UNIX 系统中,通常
要使用其它厂商所提供的 ODBC 界面,有些 UNIX 厂商会自己提供 ODBC 界面 (如 SUN 有
为 Solaris 提供 ODBC)。
ODBC 和数据库的查询采用 SQL 语言,这和大部份的数据库查询方式一样,这使得系统可
以很容易和各种数据库沟通。当然,透过 ODBC 界面,后端的数据库不一定要 DBMS 这种
大型数据库系统,亦可以是资料表 (如 Microsoft Access)、或者是试算表 (如
Microsoft Excel)。



odbc_autocommit: 开关自动改动功能。
odbc_binmode: 配置二进位资料处理方式。
odbc_close: 关闭 ODBC 链接。
odbc_close_all: 关闭所有 ODBC 链接。
odbc_commit: 改动 ODBC 数据库。
odbc_connect: 链接至 ODBC 数据库。
odbc_cursor: 取得游标名。
odbc_do: 执行 SQL 指令。
odbc_exec: 执行 SQL 指令。
odbc_execute: 执行预置 SQL 指令。
odbc_fetch_into: 取得返回的指定列。
odbc_fetch_row: 取得返回一列。
odbc_field_name: 取得字段名称。
odbc_field_type: 取得字段资料类型。
odbc_field_len: 取得字段资料长度。
odbc_free_result: 释出返回资料的内存。
odbc_longreadlen: 配置返回栏的最大值。
odbc_num_fields: 取得字段数目。
odbc_pconnect: 长期链接至 ODBC 数据库。
odbc_prepare: 预置 SQL 指令。
odbc_num_rows: 取得返回列数目。
odbc_result: 取得返回资料。
odbc_result_all: 返回 HTML 表格资料。
odbc_rollback: 撤消当前交易。
odbc_setoption: 调整 ODBC 配置。


Oracle 8 数据库函数库
-------------------------------------------------------------------------------
-



本函数库共有 15 个函数
由于本函数库都是调用 Oracle8 Call-Interface (OCI8) 来存取 Oracle 数据库,因此在
装设 Oracle 8 Client 的 Web 服务器上,可用本函数库存取 Oracle 7.x 或 8.x 二种版
本的数据库服务器。


OCIDefineByName: 让 SELECT 指令可使用 PHP 变量。
OCIBindByName: 让动态 SQL 可使用 PHP 变量。
OCILogon: 打开与 Oracle 的链接。
OCILogOff: 关闭与 Oracle 的链接。
OCIExecute: 执行 Oracle 的指令部分。
OCICommit: 将 Oracle 的交易处理付诸实行。
OCIRollback: 撤消当前交易。
OCINumRows: 取得受影响字段的数目。
OCIResult: 从目前列 (row) 的资料取得一栏 (column)。
OCIFetch: 取得返回资料的一列 (row)。
OCIFetchInto: 取回 Oracle 资料放入数组。
OCIColumnIsNULL: 测试返回行是否为空的。
OCIColumnSize: 取得字段类型的大小。
OCINewDescriptor: 初始新的 LOB/FILE 描述。
OCIParse: 分析 SQL 语法。


-------------------------------------------------------------------------------

Oracle 数据库函数库
-------------------------------------------------------------------------------
-



本函数库共有 22 个函数
要使用这个函数库,要在安装 PHP 及 Apache Server 之前先将 Oracle 数据库安装好,
并确定 Oracle 能够顺利运作。之后在 PHP 配置 (configure) 时加入
--with-oracle=DIR 的选项,DIR 就是 $ORACLE_HOME 环境变量,例如:
./configure --with-oracle=/abc/def/oracle/product/7.0.3 --with-apache=..
/apache_1.3.x --enable-track-vars

以下的范例是 stevel@nettek-llc.com (22-Jan-1999) 所提供的。这个范例是返回
Oracle 中 sid1 数据库 (Database) 的 EMP 资料表 (Table) 所有资料。帐号是 SCOTT、
密码为 TIGER。

<?php

putenv("ORACLE_SID=sid1");
putenv("ORACLE_HOME=/u01/app/oracle/product/8.0.5");

$handle = ora_plogon("SCOTT@sid1",  "TIGER") or die;
$cursor = ora_open($handle);
ora_commitoff($handle);

$query = "SELECT * FROM EMP";
ora_parse($cursor, $query) or die;
ora_exec($cursor);

echo  "<HTML><PRE>\n";
echo  "$query\n\n";
$numcols = 0;
while(ora_fetch($cursor)) {
    $numcols = ora_numcols($cursor);
    for ($column=0; $column < $numcols; $column++) {
        $data = trim(ora_getcolumn($cursor, $column));
        if($data ==  "") $data = "NULL";
        echo  "$data\t";
    }
    echo  "\n";
}
$numrows = ora_numrows($cursor);
echo  "\nROWS RETURNED: $numrows\n";
echo  "</PRE></HTML>\n";

ora_close($cursor);

?>


kk@shonline.de (05-Aug-1998) 指出 ORACLE_HOME 为 Oracle 的安装路径,
ORACLE_SID 为 Oracle 的数据库名称,若不知道这二个环境变量可以用 sqlplus 连上
Oracle 来查证。




Ora_Bind: 链接 PHP 变量到 Oracle 参数。
Ora_Close: 关闭一个 Oracle 的 cursor。
Ora_ColumnName: 得到 Oracle 返回列 (Column) 的名称。
Ora_ColumnType: 得到 Oracle 返回列 (Column) 的类型。
Ora_Commit: 将 Oracle 的交易处理付诸实行。
Ora_CommitOff: 关闭自动执行 Oracle 交易改动的功能。
Ora_CommitOn: 打开自动执行 Oracle 交易改动的功能。
Ora_Error: 获得 Oracle 错误信息。
Ora_ErrorCode: 获得 Oracle 错误代码。
Ora_Exec: 执行 Oracle 的指令部分。
Ora_Fetch: 取得返回资料的一列 (row)。
Ora_GetColumn: 从返回列 (row) 的资料取得一栏 (column)。
Ora_Logoff: 结束与 Oracle 的链接。
Ora_Logon: 打开与 Oracle 的链接。
Ora_Open: 打开 Oracle 的 cursor。
Ora_Parse: 分析 SQL 语法。
Ora_Rollback: 撤消当前交易。
Ora_Do: 快速的 SQL 查询。
Ora_FetchInto: 取回 Oracle 资料放入数组。
Ora_ColumnSize: 取得字段类型的大小。
Ora_Numcols: 取得字段的数目。
Ora_PLogon: 打开与 Oracle 的长期链接。


Perl 相容语法函数库
-------------------------------------------------------------------------------

本函数库共有 4 个函数
对于熟悉 Perl 的 Webmaster 来说,使用这个函数库可以将 Prel 语言中最强的样式比对
功能带到 PHP 之中。更多的细节可以参考 Programming Perl 这本书第二章中有关样式比
对 (Pattern Matching) 的部份 (中译本为 Perl 程序设计,第 63 页起)


preg_match: 字符串比对解析。
preg_match_all: 字符串整体比对解析。
preg_replace: 字符串比对解析并取代。
preg_split: 将字符串依指定的规则切开。


PDF 格式文件函数库
-------------------------------------------------------------------------------
-



本函数库共有 65 个函数
PDF 是 Adobe 所发展的可携式文件格式,它的文件可以在网络上传输、浏览,甚至使用印
表机印出,或使用其它输出装置输出,都可以保存原来的文字及图片的编排。详细的信息
可以参考 Adobe 的网站。参考其中有关 PDF 或 Acrobat 的部份。
在 UNIX 系统中,可以使用 Thomas Merz 开发的 PDF 函数库。将它编译安装完成后,再
编译 PHP 程序方可供 PHP 使用 pdflib。编译时可能要 JPEG library 及 TIFF library


除了用这个函数库可以建立 PDF 文件外,FastIO 公司发展的产品 ClibPDF 也可以处理
PDF 文件。

以下为处理 PDF 文件的范例,本例对 test.pdf 加工后等待用户读取。

<?php
$fp = fopen("test.pdf", "w");
$pdf = PDF_open($fp);
pdf_set_info_author($pdf, "Uwe Steinmann");
PDF_set_info_title($pdf, "Test for PHP wrapper of PDFlib 2.0");
PDF_set_info_author($pdf, "Name of Author");
pdf_set_info_creator($pdf, "See Author");
pdf_set_info_subject($pdf, "Testing");
PDF_begin_page($pdf, 595, 842);
PDF_add_outline($pdf, "Page 1");
pdf_set_font($pdf, "Times-Roman", 30, 4);
pdf_set_text_rendering($pdf, 1);
PDF_show_xy($pdf, "Times Roman outlined", 50, 750);
pdf_moveto($pdf, 50, 740);
pdf_lineto($pdf, 330, 740);
pdf_stroke($pdf);
PDF_end_page($pdf);
PDF_close($pdf);
fclose($fp);
echo "<A HREF=getpdf.php3>finished</A>";
?>


上例中的 gettest.php3 可能像下面的样子

<?php
$fp = fopen("test.pdf", "r");
header("Content-type: application/pdf");
fpassthru($fp);
fclose($fp);
?>




PDF_get_info: 返回文件信息。
PDF_set_info_creator: 配置建档者字符串。
PDF_set_info_title: 配置文件标题。
PDF_set_info_subject: 配置文件主题。
PDF_set_info_keywords: 配置文件的关键字。
PDF_set_info_author: 配置文件作者。
PDF_open: 建立新的 PDF 档。
PDF_close: 关闭 PDF 档。
PDF_begin_page: 启始 PDF 文件页面。
PDF_end_page: 关闭 PDF 文件页面。
PDF_show: 输出字符串到 PDF 文件。
PDF_show_xy: 输出字符串到指定坐标。
PDF_set_font: 配置使用的字型及大小。
PDF_set_leading: 配置行距。
PDF_set_text_rendering: 配置文字表现方式。
PDF_set_horiz_scaling: 配置文字水平间距。
PDF_set_text_rise: 配置文字高度。
PDF_set_text_matrix: 配置文字矩阵。
PDF_set_text_pos: 配置文字位置。
PDF_set_char_spacing: 配置字符间距。
PDF_set_word_spacing: 配置字间距。
PDF_continue_text: 输出文字。
PDF_stringwidth: 计算字符串的宽度。
PDF_save: 储存环境变量。
PDF_restore: 还原环境变量。
PDF_translate: 移动原点。
PDF_scale: 缩放类。
PDF_rotate: 旋转类。
PDF_setflat: 配置平滑值。
PDF_setlinejoin: 配置连接参数。
PDF_setlinecap: 配置 linecap 参数。
PDF_setmiterlimit: 配置斜边界限。
PDF_setlinewidth: 配置线宽。
PDF_setdash: 配置虚线样式。
PDF_moveto: 配置处理的坐标点。
PDF_curveto: 绘贝氏曲线。
PDF_lineto: 绘直线。
PDF_circle: 绘圆。
PDF_arc: 绘弧。
PDF_rect: 绘长方形。
PDF_closepath: 形成封闭的向量形状。
PDF_stroke: 沿向量绘线。
PDF_closepath_stroke: 形成封闭的向量形状并沿向量绘线。
PDF_fill: 填满目前的向量。
PDF_fill_stroke: 填满目前的向量并沿向量绘线。
PDF_closepath_fill_stroke: 形成封闭的向量形状沿向量绘线并填满。
PDF_endpath: 关闭目前向量。
PDF_clip: 组合所有向量。
PDF_setgray_fill: 指定填入的颜色为灰阶。
PDF_setgray_stroke: 指定绘图的颜色为灰阶。
PDF_setgray: 指定绘图的颜色为灰阶并填入。
PDF_setrgbcolor_fill: 指定填入的颜色为彩色。
PDF_setrgbcolor_stroke: 指定绘图的颜色为彩色。
PDF_setrgbcolor: 指定绘图的颜色为彩色并填入。
PDF_add_outline: 目前页面加入书签。
PDF_set_transition: 配置页的转换。
PDF_set_duration: 配置二页的切换时间。
PDF_open_gif: 打开 GIF 图档。
PDF_open_memory_image: 打开内存图档。
PDF_open_jpeg: 打开 JPEG 图档。
PDF_close_image: 关闭图档。
PDF_place_image: 放置图片到 PDF 档指定位置。
PDF_put_image: 放置图片到 PDF 档。
PDF_execute_image: 放置 PDF 档中图片到指定位置。
PDF_add_annotation: 加入注释。


PostgreSQL 数据库函数库
-------------------------------------------------------------------------------
-



本函数库共有 32 个函数
Postgres 数据库是由柏克莱大学电脑科学系所开发的数据库系统,为类关联式数据库的先
驱。它提供 SQL92/SQL3 语法。PostgreSQL 是公开使用的免费系统。更多细节可在
http://www.PostgreSQL.org 站上看到。
在 phpWizard.net 网站上也有用 Browser 管理 PostgreSQL 的套装程序 PostgresAdmin
。可以用它来轻松管理 PostgreSQL 数据库。

在公元 1998 年的 PostgreSQL 6.3 版之后,可以使用 UNIX 上的 domain sockets。
postmaster 加上参数 -i 就可以使用,PostgreSQL 系统会用到 /tmp/.s.PGSQL.5432 的
文件。

下面为使用 LOB (Large Object) 的例子

<?php
$database = pg_Connect ("", "", "", "", "jacarta");
pg_exec ($database, "begin");
  $oid = pg_locreate ($database);
  echo ("$oid\n");
  $handle = pg_loopen ($database, $oid, "w");
  echo ("$handle\n");
  pg_lowrite ($handle, "gaga");
  pg_loclose ($handle);
pg_exec ($database, "commit")
pg_exec ($database, "end")
?>




pg_Close: 关闭 PostgreSQL 服务器连接。
pg_cmdTuples: 取得被 SQL 指令影响的资料笔数。
pg_Connect: 打开 PostgreSQL 服务器连接。
pg_DBname: 取得目前的数据库名称。
pg_ErrorMessage: 返回错误信息。
pg_Exec: 执行 query 指令。
pg_Fetch_Array: 返回数组资料。
pg_Fetch_Object: 返回类资料。
pg_Fetch_Row: 返回单列的各字段。
pg_FieldIsNull: 检查字段是否有资料。
pg_FieldName: 返回指定字段的名称。
pg_FieldNum: 取得指定字段的行数。
pg_FieldPrtLen: 计算可列示的长度。
pg_FieldSize: 计算指定字段的长度。
pg_FieldType: 获得目前字段的类型。
pg_FreeResult: 释放返回占用内存。
pg_GetLastOid: 取得最后的类代码。
pg_Host: 取得连接机器名称。
pg_loclose: 关闭大型类。
pg_locreate: 建立大型类。
pg_loopen: 打开大型类。
pg_loread: 读取大型类。
pg_loreadall: 读取大型类并输出。
pg_lounlink: 删除大型类。
pg_lowrite: 读取大型类。
pg_NumFields: 取得返回字段的数目。
pg_NumRows: 取得返回列的数目。
pg_Options: 取得连接机器选项。
pg_pConnect: 打开 PostgreSQL 服务器持续连接。
pg_Port: 取得连接机器埠号。
pg_Result: 取得查询 (query) 的结果。
pg_tty: 取得连接机器终端机。


URL 处理函数库
-------------------------------------------------------------------------------

本函数库共有 5 个函数
parse_url: 解析 URL 字符串。
urldecode: 还原 URL 编码字符串。
urlencode: 将字符串以 URL 编码。
base64_encode: 将字符串以 BASE64 编码。
base64_decode: 将 BASE64 编码字符串解码。

正则表达式函数库
------------------------------------------------------------------------------


本函数库共有 6 个函数
关于正则表达式 (Regular expression),似乎译成:字符串解析处理,较合乎字面上的意
义。但目前所有的相关书籍都译成正则表达式或是正规表示法....等等,实际上是负责字
符串解析比对,并对字符串做相关的处理。
本函数库让 PHP 也能处理复杂的字符串操作。它采用了 POSIX 1003.2 的扩充常规处理
(regular expression) 的标准。更多关于正则表达式的信息可以参考 UNIX Shell、
Perl 或是 awk 等相关的书籍。网络上也有张耀仁先生所作的正规表示式的入门与应用文
章。


ereg: 字符串比对解析。
ereg_replace: 字符串比对解析并取代。
eregi: 字符串比对解析,与大小写无关。
eregi_replace: 字符串比对解析并取代,与大小写无关。
split: 将字符串依指定的规则切开。
sql_regcase: 将字符串逐字返回大小写字符。


信号与共享内存函数库
-------------------------------------------------------------------------------

本函数库共有 9 个函数
本函数库提供 System V 的信号处理机制。这个机制可以让系统限制同时使用行程所存取
的资源。本函数库亦提供了内存共享的机制,可让不同的程序存取相同的变量,方便交换
程序信息。
下表为系统的共享内存的限制值

SHMMAX 共享内存的最大值,一般为 131072 bytes
SHMMIN 共享内存的最小值,一般为 1 byte
SHMMNI 内存共享部分的最大值,一般为 100
SHMSEG 每个行程所能共享的最大内存空间,一般为 6


sem_get: 取得信号代码。
sem_acquire: 捕获信号。
sem_release: 释出信号。
shm_attach: 打开建立共享内存空间。
shm_detach: 中止共享内存空间链接。
shm_remove: 清除内存空间。
shm_put_var: 加入或更新内存空间中的变量。
shm_get_var: 取得内存空间中指定的变量。
shm_remove_var: 删除内存空间中指定的变量。

Solid 数据库链接函数库
-------------------------------------------------------------------------------


本函数库共有 10 个函数
理论上,使用标准的 ODBC 会比使用本函数好。当然也可以使用本函数,只是较不鼓励
Solid 函数库。


solid_close: 关闭 solid 链接。
solid_connect: 链接至 solid 数据库。
solid_exec: 执行 SQL 指令。
solid_fetchrow: 取得返回一列。
solid_fieldname: 取得字段名称。
solid_fieldnum: 取得字段数目。
solid_freeresult: 释出返回资料的内存。
solid_numfields: 取得字段数目。
solid_numrows: 取得返回列数目。
solid_result: 取得返回资料。

SNMP 网管函数库
-------------------------------------------------------------------------------
-



本函数库共有 5 个函数
SNMP (网管协议, Simple Network Management Protocol) 是身为 MIS 或是网络管理人员
所必须要碰到的重要课题,中文方面可参考张苑蓉所译的 SNMP 网络管理协议 (ISBN:
957-8247-14-1),或者直接参考 RFC1089 文件。另外在 http://www.snmp.com 也有许多
资料。
要在 PHP 中使用 SNMP 网管函数,需要确定是否可以使用 SNMP 功能。UNIX 系统需要先
加装 UCD SNMP 程序,可在 http://ucd-snmp.ucdavis.edu 取得。Windows NT 需要先安
装 SNMP 的系统服务。Windows 95/98 系列则无法使用本功能。

值得注意的是 UNIX 平台在编译 UCD SNMP 程序之前,要先将 config.h 文件中的
NO_ZEROLENGTH_COMMUNITY 常量 define 设成 1,也就是将该行的行首 # 字符删掉。如下


define NO_ZEROLENGTH_COMMUNITY 1

若网络部分 (segmentation) 有怪异的情形,可能就不能用上面的方式了。而若懒得重新
编译 UCD SNMP,可以在配置 PHP 时加入 --enable-ucd-snmp-hack 的选项。



snmpget: 取得指定类识别码。
snmpwalk: 取得所有类。
snmpwalkoid: 取得网络本体树状信息。
snmp_get_quick_print: 取得 UCD 函数库中的 quick_print 值。
snmp_set_quick_print: 配置 UCD 函数库中的 quick_print 值。

-------------------------------------------------------------------------------
字符串处理函数库
-------------------------------------------------------------------------------
-



本函数库共有 51 个函数
AddSlashes: 字符串加入斜线。
bin2hex: 二进位转成十六进位。
Chop: 去除连续空白。
Chr: 返回序数值的字符。
chunk_split: 将字符串分成小段。
convert_cyr_string: 转换古斯拉夫字符串成其它字符串。
crypt: 将字符串用 DES 编码加密。
echo: 输出字符串。
explode: 切开字符串。
flush: 清出输出缓冲区。
get_meta_tags: 抽出文件所有 meta 标记的资料。
htmlspecialchars: 将特殊字符转成 HTML 格式。
htmlentities: 将所有的字符都转成 HTML 字符串。
implode: 将数组变成字符串。
join: 将数组变成字符串。
ltrim: 去除连续空白。
md5: 计算字符串的 MD5 哈稀。
nl2br: 将换行字符转成 <br>。
Ord: 返回字符的序数值。
parse_str: 解析 query 字符串成变量。
print: 输出字符串。
printf: 输出格式化字符串。
quoted_printable_decode: 将 qp 编码字符串转成 8 位字符串。
QuoteMeta: 加入引用符号。
rawurldecode: 从 URL 专用格式字符串还原成普通字符串。
rawurlencode: 将字符串编码成 URL 专用格式。
setlocale: 配置地域化信息。
similar_text: 计算字符串相似度。
soundex: 计算字符串的读音值
sprintf: 将字符串格式化。
strchr: 寻找第一个出现的字符。
strcmp: 字符串比较。
strcspn: 不同字符串的长度。
strip_tags: 去掉 HTML 及 PHP 的标记。
StripSlashes: 去掉反斜线字符。
strlen: 取得字符串长度。
strrpos: 寻找字符串中某字符最后出现处。
strpos: 寻找字符串中某字符最先出现处。
strrchr: 取得某字符最后出现处起的字符串。
strrev: 颠倒字符串。
strspn: 找出某字符串落在另一字符串遮罩的数目。
strstr: 返回字符串中某字符串开始处至结束的字符串。
strtok: 切开字符串。
strtolower: 字符串全转为小写。
strtoupper: 字符串全转为大写。
str_replace: 字符串取代。
strtr: 转换某些字符。
substr: 取部份字符串。
trim: 截去字符串首尾的空格。
ucfirst: 将字符串第一个字符改大写。
ucwords: 将字符串每个字第一个字母改大写。


变量处理函数库
-------------------------------------------------------------------------------

本函数库共有 17 个函数
gettype: 取得变量的类型。
intval: 变量转成整数类型。
doubleval: 变量转成倍浮点数类型。
empty: 判断变量是否已配置。
is_array: 判断变量类型是否为数组类型。
is_double: 判断变量类型是否为倍浮点数类型。
is_float: 判断变量类型是否为浮点数类型。
is_int: 判断变量类型是否为整数类型。
is_integer: 判断变量类型是否为长整数类型。
is_long: 判断变量类型是否为长整数类型。
is_object: 判断变量类型是否为类类型。
is_real: 判断变量类型是否为实数类型。
is_string: 判断变量类型是否为字符串类型。
isset: 判断变量是否已配置。
settype: 配置变量类型。
strval: 将变量转成字符串类型。
unset: 删除变量。


Vmailmgr 邮件处理函数库
-------------------------------------------------------------------------------


本函数库共有 5 个函数
本函数需要 qmail 及 vmailmgr,可以到 http://www.qmail.org 及 http://www.qcc.
sk.ca/~bguenter/distrib/vmailmgr/ 取得相关的资料及程序。
在使用时需要二个变量,分别为 domain 名字及密码,密码只有前八位数有效。例如

<?php
dl("php3_vmailmgr.so"); //载入动态函数库
$vdomain="vdomain.com";
$basepwd="password";
// 以下为欲使用的 Vmailmgr 函数
?>


vm_adduser: 加入新用户。
vm_addalias: 加入新别名。
vm_passwd: 改变用户密码。
vm_delalias: 删除别名。
vm_deluser: 删除用户。


WDDX 函数库
-------------------------------------------------------------------------------

本函数库共有 6 个函数
WDDX 为全球信息网分散式文件交换,全名为 Web Distributed Data Exchange。其实
WDDX 可以算是 XML 的一个分支。更多有关 WDDX 的信息可以参考 http://www.wddx.org

例一: 本例将单一值连续化

<?php
print wddx_serialize_value("PHP to WDDX packet example", "PHP packet");
?>


返回到浏览器的资料为

<wddxPacket version='0.9'><header comment='PHP packet'/><data>
<string>PHP to WDDX packet example</string></data></wddxPacket>

例二: 本例将 WDDX 封包加入资料

<?php
$pi = 3.1415926;
$packet_id = wddx_packet_start("PHP");
wddx_add_vars($packet_id, "pi");

/* Suppose $cities came from database */
$cities = array("Austin", "Novato", "Seattle");
wddx_add_vars($packet_id, "cities");

$packet = wddx_packet_end($packet_id);
print htmlentities($packet);
?>


返回到浏览器的资料为

<wddxPacket version='0.9'><header comment='PHP'/><data><struct>
<var name='pi'><number>3.1415926</number></var><var name='cities'>
<array length='3'><string>Austin</string><string>Novato</string>
<string>Seattle</string></array></var></struct></data></wddxPacket>



wddx_serialize_value: 将单一值连续化。
wddx_serialize_vars: 将多值连续化。
wddx_packet_start: 开始新的 WDDX 封包。
wddx_packet_end: 结束的 WDDX 封包。
wddx_add_vars: 将 WDDX 封包连续化。
wddx_deserialize: 将 WDDX 封包解连续化。

-------------------------------------------------------------------------------
压缩文件函数库
-------------------------------------------------------------------------------
-



本函数库共有 15 个函数
欲使用本函数库需先安装 zlib,可到 http://www.cdrom.com/pub/infozip/zlib/ 取得该
函数库。


gzclose: 关闭压缩文件。
gzeof: 判断是否在压缩文件尾。
gzfile: 读压缩文件到数组中。
gzgetc: 读压缩文件中的字符。
gzgets: 读压缩文件中的字符串。
gzgetss: 读压缩文件中的字符串,并去掉 HTML 指令。
gzopen: 打开压缩文件。
gzpassthru: 解压缩指针后全部资料。
gzputs: 资料写入压缩文件。
gzread: 压缩文件读出指定长度字符串。
gzrewind: 重设压缩文件指针。
gzseek: 设压缩文件指针至指定处。
gztell: 取得压缩文件指针处。
readgzfile: 读出压缩文件。
gzwrite: 资料写入压缩文件。

-------------------------------------------------------------------------------
XML 解析函数库
-------------------------------------------------------------------------------
-



本函数库共有 20 个函数
XML (eXtensible Markup Language) 是一种资料文件转换的标准。详情请参考 http:
//www.w3.org/XML。
要使用本函数库,需先到 http://www.jclark.com/xml 取回 XML 的函数库,并且编译或
安装。用 RedHat Linux 的用户可以到 http://www.guardian.no/~ssb/phpxml.html 取得
 RPM 的格式档。之后要在编译 PHP 前加入 --with-xml 的配置选项。tommy@nashville.
net 指出 (12-Jan-1999) 若有问题,尚需在 /usr/local/include 放入 xmltok.h 及
xmlparse.h 二个 C 语言的标头档,或是设好环境变量。

目前的版本支持三种字符集:US-ASCII、ISO-8859-1 与 UTF-8。至于 UTF-16 字符集 PHP
 尚未支持。

XML 有许多错误代码,如下

XML_ERROR_NONE
XML_ERROR_NO_MEMORY
XML_ERROR_SYNTAX
XML_ERROR_NO_ELEMENTS
XML_ERROR_INVALID_TOKEN
XML_ERROR_UNCLOSED_TOKEN
XML_ERROR_PARTIAL_CHAR
XML_ERROR_TAG_MISMATCH
XML_ERROR_DUPLICATE_ATTRIBUTE
XML_ERROR_JUNK_AFTER_DOC_ELEMENT
XML_ERROR_PARAM_ENTITY_REF
XML_ERROR_UNDEFINED_ENTITY
XML_ERROR_RECURSIVE_ENTITY_REF
XML_ERROR_ASYNC_ENTITY
XML_ERROR_BAD_CHAR_REF
XML_ERROR_BINARY_ENTITY_REF
XML_ERROR_ATTRIBUTE_EXTERNAL_ENTITY_REF
XML_ERROR_MISPLACED_XML_PI
XML_ERROR_UNKNOWN_ENCODING
XML_ERROR_INCORRECT_ENCODING
XML_ERROR_UNCLOSED_CDATA_SECTION
XML_ERROR_EXTERNAL_ENTITY_HANDLING
和中文有关的信息可在中央研究院的 Chinese XML Now 网站看到。而和 XML 有关的术语
则使用曾士熊先生所译的 SGML 名词英汉翻译表。


xml_parser_create: 初始 XML 解析器。
xml_set_object: 使 XML 解析器用类。
xml_set_element_handler: 配置元素的标头。
xml_set_character_data_handler: 建立字符资料标头。
xml_set_processing_instruction_handler: 建立处理指令标头。
xml_set_default_handler: 建立默认标头。
xml_set_unparsed_entity_decl_handler: 配置未解析实体宣告的标头。
xml_set_notation_decl_handler: 配置记法宣告的标头。
xml_set_external_entity_ref_handler: 配置外部实体参引的标头。
xml_parse: 解析 XML 文件。
xml_get_error_code: 取得 XML 错误码。
xml_error_string: 取得 XML 错误字符串。
xml_get_current_line_number: 取得目前解析的行号。
xml_get_current_column_number: 获知目前解析的第几字段。
xml_get_current_byte_index: 取得目前解析为第几个位组。
xml_parser_free: 释放解析占用的内存。
xml_parser_set_option: 配置解析使用的选项。
xml_parser_get_option: 取得解析使用的选项。
utf8_decode: 将 UTF-8 码转成 ISO-8859-1 码。
utf8_encode: 将 ISO-8859-1 码转成 UTF-8 码。


Session 函数库
-------------------------------------------------------------------------------


本函数库共有 11 个函数
session_start: 初始 session。
session_destroy: 结束 session。
session_name: 存取目前 session 名称。
session_module_name: 存取目前 session 模块。
session_save_path: 存取目前 session 路径。
session_id: 存取目前 session 代号。
session_register: 注册新的变量。
session_unregister: 删除已注册变量。
session_is_registered: 检查变量是否注册。
session_decode: Session 资料解码。
session_encode: Session 资料编码。

GNU 记录函数库
-------------------------------------------------------------------------------

本函数库共有 2 个函数
要使用本函数库,要先装好 GNU Recode 函数库 3.5 版以上。同时要在编译 PHP 程序时
,使用 --with-recode。
GNU 记录函数库可以在不同的字符集和它表面的编码间相互转换。若无法正确转换,它会
尽可能找最正确的字符。目前它可以处理超过 150 个不同的字集 (character sets),大
部份支持的字集都是 RFC 1345 的字集。

recode_string: 记录字符串到记录中。
recode_file: 记录文件或文件请求到记录中。

FTP 文件传输函数库
-------------------------------------------------------------------------------
-



本函数库共有 20 个函数
FTP 的全为 File Transfer Protocol,也就是文件传输协议。利用本函数库可以让 PHP
也能处理 FTP 的相关功能。本函数库需要 PHP 3.0.13 版之后才支持。


ftp_connect: 打开 FTP 链接。
ftp_login: 登入 FTP 服务器。
ftp_pwd: 取得目前所在路径。
ftp_cdup: 回上层目录。
ftp_chdir: 改变路径。
ftp_mkdir: 建新目录。
ftp_rmdir: 删除目录。
ftp_nlist: 列出指定目录中所有文件。
ftp_rawlist: 详细列出指定目录中所有文件。
ftp_systype: 显示服务器系统。
ftp_pasv: 切换主被动传输模式。
ftp_get: 下载文件。
ftp_fget: 下载文件,并存在已开的档中。
ftp_put: 上传文件。
ftp_fput: 上传已打开文件。
ftp_size: 获得指定文件的大小。
ftp_mdtm: 获得指定文件的最后修改时间。
ftp_rename: 将文件改名。
ftp_delete: 将文件删除。
ftp_quit: 关闭 FTP 连接。


MCAL 模块日历存取函数库
-------------------------------------------------------------------------------

本函数库共有 0 个函数






--
   mm       ☆__      __  __ __☆______ ______ __  __☆
/^(  )^\      █      █  █/    █____ █__█ █∨█
\,(..),/  ▅__█  ▅__█  █\__  ▂__█ █  █ █  █
  V~~V   ▇▆▅▃▁I'm a bat. I'm very bad!^Q^_▃▄▆▇你好!^_^欢迎大家到linux?

※ 修改:·jjksam 於 Dec  5 16:27:32 修改本文·[FROM: 192.168.0.146]
※ 来源:·荔园晨风BBS站 bbs.szu.edu.cn·[FROM: 192.168.0.146]
--
※ 转载:·荔园晨风BBS站 bbs.szu.edu.cn·[FROM: 192.168.0.146]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店