PHP 5.6.0beta1 released

CURLFile::__construct

curl_file_create

(PHP 5 >= 5.5.0)

CURLFile::__construct -- curl_file_createCreate a CURLFile object

Description

Object oriented style

public CURLFile::__construct ( string $filename [, string $mimetype [, string $postname ]] )

Procedural style

CURLFile curl_file_create ( string $filename [, string $mimetype [, string $postname ]] )

Creates a CURLFile object, used to upload a file with CURLOPT_POSTFIELDS.

Parameters

filename

Path to the file which will be uploaded.

mimetype

Mimetype of the file.

postname

Name of the file.

Return Values

Returns a CURLFile object.

Examples

Example #1 CURLFile::__construct() example

Object oriented style

<?php
/* http://example.com/upload.php:
<?php var_dump($_FILES); ?>
*/

// Create a cURL handle
$ch curl_init('http://example.com/upload.php');

// Create a CURLFile object
$cfile = new CURLFile('cats.jpg','image/jpeg','test_name');

// Assign POST data
$data = array('test_file' => $cfile);
curl_setopt($chCURLOPT_POST,1);
curl_setopt($chCURLOPT_POSTFIELDS$data);

// Execute the handle
curl_exec($ch);
?>

Procedural style

<?php
/* http://example.com/upload.php:
<?php var_dump($_FILES); ?>
*/

// Create a cURL handle
$ch curl_init('http://example.com/upload.php');

// Create a CURLFile object
$cfile curl_file_create('cats.jpg','image/jpeg','test_name');

// Assign POST data
$data = array('test_file' => $cfile);
curl_setopt($chCURLOPT_POST,1);
curl_setopt($chCURLOPT_POSTFIELDS$data);

// Execute the handle
curl_exec($ch);
?>

The above example will output:

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

See Also

add a note add a note

User Contributed Notes 1 note

up
0
mipa
1 month ago
For PHP < 5.5:

<?php

if (!function_exists('curl_file_create')) {
    function
curl_file_create($filename, $mimetype = '', $postname = '') {
        return
"@$filename;filename="
           
. ($postname ?: basename($filename))
            . (
$mimetype ? ";type=$mimetype" : '');
    }
}

?>
To Top