(PHP 5 >= 5.5.0, PHP 7)
CURLFile::__construct -- curl_file_create — Crear un objeto CURLFile
Estilo orientado a objetos
$filename
[, string $mimetype
[, string $postname
]] )Estilo por procedimientos
Crea un objeto CURLFile , utilizado para transferir (upload) un fichero con CURLOPT_POSTFIELDS.
filenameRuta de acceso al fichero a ser transferido.
mimetypeTipo MIME del fichero.
postnameNombre del fichero para los datos de subida.
Devuelve un objeto CURLFile .
Ejemplo #1 Ejemplo con CURLFile::__construct()
Estilo orientado a objetos
<?php
/* http://example.com/upload.php:
<?php var_dump($_FILES); ?>
*/
// Crea un gestor cURL
$ch = curl_init('http://example.com/upload.php');
// Crea un objeto CURLFile
$cfile = new CURLFile('cats.jpg','image/jpeg','test_name');
// Asigna los datos POST
$data = array('test_file' => $cfile);
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
// Ejecuta el gestor
curl_exec($ch);
?>
Estilo por procedimientos
<?php
/* http://example.com/upload.php:
<?php var_dump($_FILES); ?>
*/
// Crea un gestor cURL
$ch = curl_init('http://example.com/upload.php');
// Crea un objeto CURLFile
$cfile = curl_file_create('cats.jpg','image/jpeg','test_name');
// Asigna los datos POST
$data = array('test_file' => $cfile);
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
// Ejecuta el gestor
curl_exec($ch);
?>
El resultado del ejemplo sería:
array(1) {
["test_file"]=>
array(5) {
["name"]=>
string(9) "test_name"
["type"]=>
string(10) "image/jpeg"
["tmp_name"]=>
string(14) "/tmp/phpPC9Kbx"
["error"]=>
int(0)
["size"]=>
int(46334)
}
}