Client URL 库

目录

简介

CURLFile 应该与选项 CURLOPT_POSTFIELDS 一同使用用于上传文件。

类摘要

CURLFile

class CURLFile {

/* 属性 */

public $name ;

public $mime ;

public $postname ;

/* 方法 */

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

public string getFilename ( void )

public string getMimeType ( void )

public string getPostFilename ( void )

public void setMimeType ( string $mime )

public void setPostFilename ( string $postname )

public void __wakeup ( void )

}

属性

name
待上传文件的名称

mime
文件的 MIME type(默认是application/octet-stream)。

postname
上传数据中的文件名称(默认为属性 name )。

参见

  • curl_setopt

CURLFile::__construct

curl_file_create

创建 CURLFile 对象

说明

面向对象风格

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

过程化风格

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

创建 CURLFile 对象,使用 CURLOPT_POSTFIELDS 选项上传文件。

参数

filename
被上传文件的 路径。

mimetype
被上传文件的 MIME 类型。

postname
上传数据里面的文件名。

返回值

返回 CURLFile 对象。

范例

示例 #1 CURLFile::__construct 示例

面向对象风格

<?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($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);

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

过程化风格

<?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($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);

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

以上例程会输出:

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

参见

  • curl_setopt

CURLFile::getFilename

获取被上传文件的 文件名

说明

public string CURLFile::getFilename ( void )

参数

此函数没有参数。

返回值

返回被上传文件的 文件名。

CURLFile::getMimeType

获取被上传文件的 MIME 类型

说明

public string CURLFile::getMimeType ( void )

参数

此函数没有参数。

返回值

返回被上传文件的 MIME 类型。

CURLFile::getPostFilename

获取 POST 请求时使用的 文件名

说明

public string CURLFile::getPostFilename ( void )

参数

此函数没有参数。

返回值

返回 POST 请求时使用的 文件名。

CURLFile::setMimeType

设置被上传文件的 MIME 类型

说明

public void CURLFile::setMimeType ( string $mime )

参数

mime
POST 数据中的 MIME 类型。

返回值

没有返回值。

CURLFile::setPostFilename

设置 POST 请求时使用的文件名

说明

public void CURLFile::setPostFilename ( string $postname )

参数

postname
POST 数据里使用的文件名。

返回值

没有返回值。

CURLFile::__wakeup

反序列化句柄

说明

public void CURLFile::__wakeup ( void )

参数

此函数没有参数。

返回值

没有返回值。

错误/异常

CURLFile 对象不是从序列化数据重建的。