# CURLFile::__construct

# curl_file_create

(PHP 5 >= 5.5.0, PHP 7, PHP 8)

CURLFile::__construct -- curl_file_create — Crear un objeto CURLFile

### Descripción

Estilo orientado a objetos

public CURLFile::__construct(string `$filename`, string `$mimetype` = ?, string `$postname` = ?)

Estilo por procedimientos

curl_file_create(string `$filename`, string `$mimetype` = ?, string `$postname` = ?): CURLFile

Crea un objeto CURLFile , utilizado para transferir (upload) un fichero con `CURLOPT_POSTFIELDS`.

### Parámetros

`filename`

  Ruta de acceso al fichero a ser transferido.

`mimetype`

  Tipo MIME del fichero.

`postname`

  Nombre del fichero para los datos de subida.

### Valores devueltos

Devuelve un objeto CURLFile .

### Ejemplos

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)
      }
    }

### Ver también

- curl_setopt() - Configura una opción para una transferencia cURL