pg_lo_import
(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)
pg_lo_import — 将文件导入为大型对象
说明
pg_lo_import() 使用文件系统上的文件作为其数据源从而在数据库中创建新的大对象。
要使用大型对象接口,需要将其放置在事务块中。
注意:
本函数以前的名字为 pg_loimport()。
参数
connection
-
An PgSql\Connection instance. When
connection
is unspecified, the default connection is used. The default connection is the last connection made by pg_connect() or pg_pconnect().警告As of PHP 8.1.0, using the default connection is deprecated.
pathname
-
在客户端文件系统上读取大对象数据的文件的完整路径和文件名。
object_id
-
如果指定了
object_id
,该函数将使用此 id 尝试创建大对象,否则服务器将分配空闲对象 id。该参数依赖于 PostgreSQL 8.1 中首次出现的功能。
返回值
新创建大对象的 OID, 或者在失败时返回 false
。
更新日志
版本 | 说明 |
---|---|
8.1.0 |
现在 connection 参数接受 PgSql\Connection
实例,之前接受 resource。
|
示例
示例 #1 pg_lo_import() 示例
<?php
$database = pg_connect("dbname=jacarta");
pg_query($database, "begin");
$oid = pg_lo_import($database, '/tmp/lob.dat');
pg_query($database, "commit");
?>
+添加备注
用户贡献的备注 4 notes
vi2 at vi2 dot com ¶
22 years ago
its not very clear if pg_lo_import needs to have pg_lo_open called first. Because pg_lo_import handles the process of writign to the file, it seems logical that pg_lo_open does not need to be called. However due to the ugly nature of how postgres handles oid objects, it would be nice to have this documented.
yohgaki at php dot net ¶
22 years ago
Due to a bug, OLD API does not available with PHP 4.2.0 and 4.2.1.
PHP 4.2.2 will support OLD API again and will be kept long enough.
New API will be available PHP 4.2.0 to later versions.
yohgaki at php dot net ¶
22 years ago
Due to a bug, PHP 4.2.0 and 4.2.1 does not support pg_lo_import() old API. It's fixed in PHP 4.2.2.
BTW, new API will be always available from PHP 4.2.0 to later versions. Older API will be kept long enough, also.
ceco at noxis dot net ¶
22 years ago
it works for me (php-4.2.1)
not like this
int pg_lo_import ( string pathname [, resource connection])
but
int pg_lo_import ( resource connection, string pathname )
don't know the reason
备份地址:http://www.lvesu.com/blog/php/function.pg-lo-import.php