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.
pg_lo_import
(PHP 4 >= 4.2.0, PHP 5)
pg_lo_import — Importa um objeto grande (large object) a partir de um arquivo
Descrição
$connection
], string $pathname
)Em versões anteriores a 4.2.0, a sintaxe desta função é diferente, veja a seguinte definição:
$pathname
[, resource $connection
] )
O argumento pathname especifica o caminho do
arquivo a ser importado como um objeto grande (large object). Retorna FALSE se um
erro ocorrer, caso contrário, retorna o oid do objeto recém criado.
Para usar a interface de objetos grandes (lo) é necessário encapsulá-lo em um bloco de transação.
Nota: Quando o safe-mode está ativo, o PHP verifica se os arquivo(s) ou diretórios que estão usados na operação tem o mesmo UID (proprietário) do script que está sendo executado.
Nota:
Esta função era chamada pg_loimport().
Veja também pg_lo_export() e pg_lo_open().
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.
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.
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
