PHP 资源

phpserver side programmingprogramming更新于 2025/8/19 8:52:17

定义和用法

在 PHP 中,资源 是一种特殊的数据类型,它引用任何外部资源。资源变量充当对外部数据源(例如流、文件、数据库等)的引用。PHP 使用相关函数来创建这些资源。例如,fopen() 函数打开一个磁盘文件,并将其引用存储在资源变量中。

PHP 的 Zend 引擎使用引用计数系统。因此,引用计数为零的资源会被垃圾回收器自动销毁。因此,资源数据类型占用的内存无需手动释放。

借助相应的函数,PHP 脚本可以处理各种类型的资源。下表显示了一个选择列表 −

资源类型名称
创建者
销毁者
定义
bzip2
bzopen()
bzclose()
Bzip2 file
curl
curl_init()
curl_close()
Curl session
ftp
ftp_connect(),
ftp_close()
FTP stream
mssql link
mssql_connect()
mssql_close()
Link to Microsoft SQL Server database
mysql link
mysql_connect()
mysql_close()
Link to MySQL database
mysql result
mysql_db_query(),
mysql_free_result()
MySQL result
oci8 connection
oci_connect()
oci_close()
Connection to Oracle Database
ODBC link
odbc_connect()
odbc_close()
Link to ODBC database
pdf document
pdf_new()
pdf_close()
PDF document
stream
opendir()
closedir()
Dir handle
stream
fopen(), tmpfile()
fclose()
File handle
socket
 
fclose()
Socket handle
xml
xml_parser_create(),
xml_parser_free()
XML parser
zlib
gzopen()
gzclose()
gz-compressed file
zlib.deflate
deflate_init()
None()
incremental deflate context
zlib.inflate
inflate_init()
None()
incremental inflate context

在此上下文中,PHP 具有 get_resource_type() 函数,该函数返回变量的资源类型。

语法

要声明类的对象,我们需要使用 new 语句

get_resource_type ( resource $handle ) : string

其中 $handle 是要获取其类型的资源变量。此函数返回与资源类型对应的字符串。

以下示例显示了磁盘文件的资源类型

示例

<?php
$fp=fopen("test.txt","w");
var_dump($fp);
?>

输出

这将产生以下结果 −

resource(5) of type (stream)

以下示例使用 get_resource_type() 函数

示例

<?php
$fp = fopen("test.txt", "w");
echo get_resource_type($fp) . "
"; ?>

输出

这将产生以下结果 −

stream

相关文章