无需言 做自己 业 ,精于勤 荒于嬉.

cURL 函数 curl_multi_exec 运行当前 cURL 句柄的子连接

发表日期:2021-07-01 08:56:36 | 来源: | 分类:cURL 函数

      示例1
<?php 
// 创建一对cURL资源$ch1 = curl_init();
$ch2 = curl_init();
// 设置URL和相应的选项curl_setopt($ch1, CURLOPT_URL, "http://lxr.php.net/");
curl_setopt($ch1, CURLOPT_HEADER, 0);
curl_setopt($ch2, CURLOPT_URL, "http://www.php.net/");
curl_setopt($ch2, CURLOPT_HEADER, 0);
// 创建批处理cURL句柄$mh = curl_multi_init();
// 增加2个句柄curl_multi_add_handle($mh,$ch1);
curl_multi_add_handle($mh,$ch2);
$active = null;
// 执行批处理句柄do {
    $mrc = curl_multi_exec($mh, $active);
}
 while ($mrc == CURLM_CALL_MULTI_PERFORM);
while ($active && $mrc == CURLM_OK) {
    if (curl_multi_select($mh) != -1) {
        do {
            $mrc = curl_multi_exec($mh, $active);
        }
 while ($mrc == CURLM_CALL_MULTI_PERFORM);
    }
}
// 关闭全部句柄curl_multi_remove_handle($mh, $ch1);
curl_multi_remove_handle($mh, $ch2);
curl_multi_close($mh);
?>

阅读全文 »

cURL 函数 curl_multi_getcontent 如果设置了CURLOPT_RETURNTRANSFER,则返回获取的输出的文本流

发表日期:2021-07-01 08:56:36 | 来源: | 分类:cURL 函数

curl_multi_getcontent

(PHP 5, PHP 7, PHP 8)

curl_multi_getcontent如果设置了CURLOPT_RETURNTRANSFER,则返回获取的输出的文本流

说明

curl_multi_getcontent(resource $ch): string

如果CURLOPT_RETURNTRANSFER作为一个选项被设置到一个具体的句柄,那么这个函数将会以字符串的形式返回那个cURL句柄获取的内容。

参数

handle

curl_init() 返回的 cURL 句柄。

返回值

如果设置了CURLOPT_RETURNTRANSFER,则返回获取的输出的文本流。

参见

阅读全文 »

cURL 函数 curl_multi_info_read 获取当前解析的cURL的相关传输信息

发表日期:2021-07-01 08:56:36 | 来源: | 分类:cURL 函数

      示例1
<?php 
$urls = array(   "http://www.cnn.com/",   "http://www.bbc.co.uk/",   "http://www.yahoo.com/");
$mh = curl_multi_init();
foreach ($urls as $i => $url) {
    $conn[$i] = curl_init($url);
    curl_setopt($conn[$i], CURLOPT_RETURNTRANSFER, 1);
    curl_multi_add_handle($mh, $conn[$i]);
}
do {
    $status = curl_multi_exec($mh, $active);
    $info = curl_multi_info_read($mh);
    if (false !== $info) {
        var_dump($info);
    }
}
 while ($status === CURLM_CALL_MULTI_PERFORM || $active);
foreach ($urls as $i => $url) {
    $res[$i] = curl_multi_getcontent($conn[$i]);
    curl_close($conn[$i]);
}
var_dump(curl_multi_info_read($mh));
?>

阅读全文 »

cURL 函数 curl_multi_select 等待所有cURL批处理中的活动连接

发表日期:2021-07-01 08:56:36 | 来源: | 分类:cURL 函数

curl_multi_select

(PHP 5, PHP 7, PHP 8)

curl_multi_select等待所有cURL批处理中的活动连接

说明

curl_multi_select(resource $mh, float $timeout = 1.0): int

阻塞直到cURL批处理连接中有活动连接。

参数

multi_handle

curl_multi_init() 返回的 cURL 多个句柄。

timeout

以秒为单位,等待响应的时间。

返回值

成功时返回描述符集合中描述符的数量。失败时,select失败时返回-1,否则返回超时(从底层的select系统调用).

参见

阅读全文 »

cURL 函数 curl_multi_remove_handle 移除cURL批处理句柄资源中的某个句柄资源

发表日期:2021-07-01 08:56:36 | 来源: | 分类:cURL 函数

curl_multi_remove_handle

(PHP 5, PHP 7, PHP 8)

curl_multi_remove_handle移除cURL批处理句柄资源中的某个句柄资源

说明

curl_multi_remove_handle(resource $mh, resource $ch): int

从给定的批处理句柄mh中移除ch句柄。当ch句柄被移除以后,仍然可以合法地用curl_exec()执行这个句柄。如果要移除的句柄正在被使用,则这个句柄涉及的所有传输任务会被中止。

参数

multi_handle

curl_multi_init() 返回的 cURL 多个句柄。

handle

curl_init() 返回的 cURL 句柄。

返回值

成功时返回0,失败时返回CURLM_XXX中的一个。

参见

阅读全文 »

cURL 函数 curl_multi_setopt 为 cURL 并行处理设置一个选项

发表日期:2021-07-01 08:56:36 | 来源: | 分类:cURL 函数

curl_multi_setopt

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

curl_multi_setopt为 cURL 并行处理设置一个选项

说明

curl_multi_setopt(resource $mh, int $option, mixed $value): bool

警告

本函数还未编写文档,仅有参数列表。

参数

mh

option

常量 CURLMOPT_* 之一。

value

将要设置给 option 的值。

option 参数为下列值时 value 需要为 int 类型:

Option 的值 value 设为
CURLMOPT_PIPELINING 传入 1 来启用或 0 来禁用。 在并行处理时启用管道模式 将会尽可能地使用管线化的 HTTP (译注:HTTP长连接)来 传输,这意味着如果你提交第二个请求,这个请求将会使用 已经存在的链接,第二个请求将会被送入同一个链接的“管 道”中。
CURLMOPT_MAXCONNECTS 传入一个数字来指定 libcurl 可以同时缓存的活跃链接的数量。默认值为 10。当缓存写满时, lincurl 将关闭较早创建的链接来创建新的链接。

返回值

成功时返回 true, 或者在失败时返回 false

阅读全文 »

cURL 函数 curl_multi_strerror 返回字符串描述的错误代码

发表日期:2021-07-01 08:56:36 | 来源: | 分类:cURL 函数

      示例1
<?php 
// Create cURL handles$ch1 = curl_init("http://example.com"/);
$ch2 = curl_init("http://php.net/");
// Create a cURL multi handle$mh = curl_multi_init();
// Add the handles to the multi handlecurl_multi_add_handle($mh, $ch1);
curl_multi_add_handle($mh, $ch2);
// Execute the multi handledo {
    $status = curl_multi_exec($mh, $active);
    // Check for errors    if($status > 0) {
        // Display error message        echo "ERROR!\n " . curl_multi_strerror($status);
    }
}
 while ($status === CURLM_CALL_MULTI_PERFORM || $active);
?>

阅读全文 »

cURL 函数 curl_escape 使用 URL 编码给定的字符串

发表日期:2021-07-01 08:56:35 | 来源: | 分类:cURL 函数

      示例1
<?php 
// 创建一个 curl 句柄$ch = curl_init();
// 把编码后的字符串当做一个 GET 参数$location = curl_escape($ch, 'Hofbräuhaus / München');
// 结果: Hofbr%C3%A4uhaus%20%2F%20M%C3%BCnchen// 用编码好的字符串组装一个 URL$url = "http://example.com/add_location.php?location={
$location}
";
// 结果: http://example.com/add_location.php?location=Hofbr%C3%A4uhaus%20%2F%20M%C3%BCnchen// 发送 HTTP 请求并关闭句柄curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_exec($ch);
curl_close($ch);
?>

阅读全文 »

cURL 函数 curl_errno 返回最后一次的错误代码

发表日期:2021-07-01 08:56:35 | 来源: | 分类:cURL 函数

      示例1
<?php 
// 创建 cURL 句柄,指向不存在的位置$ch = curl_init('http://404.php.net/');
// 执行curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_exec($ch);
// 检查是否有错误发生if(curl_errno($ch)){
    echo 'Curl error: ' . curl_error($ch);
}
// 关闭句柄curl_close($ch);
?>

阅读全文 »

cURL 函数 curl_copy_handle 复制一个cURL句柄和它的所有选项

发表日期:2021-07-01 08:56:35 | 来源: | 分类:cURL 函数

      示例1
<?php 
// 创建一个新的cURL资源$ch = curl_init();
// 设置URL和相应的选项curl_setopt($ch, CURLOPT_URL, 'http://www.example.com/');
curl_setopt($ch, CURLOPT_HEADER, 0);
// 复制句柄$ch2 = curl_copy_handle($ch);
// 抓取URL (http://www.example.com/) 并把它传递给浏览器curl_exec($ch2);
// 关闭cURL资源,并且释放系统资源curl_close($ch2);
curl_close($ch);
?>

阅读全文 »

cURL 函数 curl_exec 执行 cURL 会话

发表日期:2021-07-01 08:56:35 | 来源: | 分类:cURL 函数

      示例1
<?php 
// 创建新的 cURL 资源$ch = curl_init();
// 设置 URL 和相应的选项curl_setopt($ch, CURLOPT_URL, "http://www.example.com/");
curl_setopt($ch, CURLOPT_HEADER, 0);
// 抓取 URL 并把它传递给浏览器curl_exec($ch);
// 关闭 cURL 资源,并且释放系统资源curl_close($ch);
?>

阅读全文 »

URL 函数 base64_encode 使用 MIME base64 对数据进行编码

发表日期:2021-07-01 08:56:31 | 来源: | 分类:URL 函数

      示例1
<?php 
$str = 'This is an encoded string';
echo base64_encode($str);
?>

阅读全文 »

URL 函数 urldecode 解码已编码的 URL 字符串

发表日期:2021-07-01 08:56:31 | 来源: | 分类:URL 函数

      示例1
<?php 
$query = "my=apples&are=green+and+red";
foreach (explode('&', $query) as $chunk) {
    $param = explode("=", $chunk);
    if ($param) {
        printf("Value for parameter \"%s\" is \"%s\"<br/>\n", urldecode($param[0]), urldecode($param[1]));
    }
}
?>

阅读全文 »

URL 函数 get_headers 取得服务器响应一个 HTTP 请求所发送的所有标头

发表日期:2021-07-01 08:56:31 | 来源: | 分类:URL 函数

      示例1
<?php 
$url = 'http://www.example.com';
print_r(get_headers($url));
print_r(get_headers($url, 1));
?>

      示例2
<?php 
// By default get_headers uses a GET request to fetch the headers. If you// want to send a HEAD request instead, you can do so using a stream context:stream_context_set_default(    array(        'http' => array(            'method' => 'HEAD'        )    ));
$headers = get_headers('http://example.com');
?>

阅读全文 »

URL 函数 get_meta_tags 从一个文件中提取所有的 meta 标签 content 属性,返回一个数组

发表日期:2021-07-01 08:56:31 | 来源: | 分类:URL 函数

      示例1
<meta name="author" content="name">
<meta name="keywords" content="php documentation">
<meta name="DESCRIPTION" content="a php manual">
<meta name="geo.position" content="49.33;-86.59">
</head> <!-- 解析工作在此处停止 -->
      示例2
<?php 
// 假设上边的标签是在 www.example.com 中$tags = get_meta_tags('http://www.example.com/');
// 注意所有的键(key)均为小写,而键中的‘.’则转换成了‘_’。echo $tags['author'];
       // nameecho $tags['keywords'];
     // php documentationecho $tags['description'];
  // a php manualecho $tags['geo_position'];
 // 49.33;
-86.59?>

阅读全文 »

URL 函数 urlencode 编码 URL 字符串

发表日期:2021-07-01 08:56:31 | 来源: | 分类:URL 函数

      示例1
<?php 
echo '<a href="mycgi?foo=', urlencode($userinput), '">';
?>

      示例2
<?php 
$query_string = 'foo=' . urlencode($foo) . '&bar=' . urlencode($bar);
echo '<a href="mycgi?' . htmlentities($query_string) . '">';
?>

阅读全文 »

URL 函数 base64_decode 对使用 MIME base64 编码的数据进行解码

发表日期:2021-07-01 08:56:30 | 来源: | 分类:URL 函数

      示例1
<?php 
$str = 'VGhpcyBpcyBhbiBlbmNvZGVkIHN0cmluZw==';
echo base64_decode($str);
?>

阅读全文 »

URL 函数 parse_url 解析 URL,返回其组成部分

发表日期:2021-07-01 08:56:30 | 来源: | 分类:URL 函数

      示例1
<?php 
$url = 'http://username:password@hostname/path?arg=value#anchor';
print_r(parse_url($url));
echo parse_url($url, PHP_URL_PATH);
?>

      示例2
<?php 
$url = '//www.example.com/path?googleguy=googley';
// 在 5.4.7 之前这会输出路径 "//www.example.com/path"var_dump(parse_url($url));
?>

阅读全文 »

URL 函数 http_build_query 生成 URL-encode 之后的请求字符串

发表日期:2021-07-01 08:56:30 | 来源: | 分类:URL 函数

      示例1
<?php 
$data = array('foo'=>'bar',              'baz'=>'boom',              'cow'=>'milk',              'php'=>'hypertext processor');
echo http_build_query($data) . "\n";
echo http_build_query($data, '', '&amp;
');
?>

      示例2
<?php 
$data = array('foo', 'bar', 'baz', 'boom', 'cow' => 'milk', 'php' =>'hypertext processor');
echo http_build_query($data) . "\n";
echo http_build_query($data, 'myvar_');
?>

      示例3
<?php 
$data = array('user'=>array('name'=>'Bob Smith',                            'age'=>47,                            'sex'=>'M',                            'dob'=>'5/12/1956'),              'pastimes'=>array('golf', 'opera', 'poker', 'rap'),              'children'=>array('bobby'=>array('age'=>12,                                               'sex'=>'M'),                                'sally'=>array('age'=>8,                                               'sex'=>'F')),              'CEO');
echo http_build_query($data, 'flags_');
?>

      示例4
<?php 
class parentClass {
    public    $pub      = 'publicParent';
    protected $prot     = 'protectedParent';
    private   $priv     = 'privateParent';
    public    $pub_bar  = Null;
    protected $prot_bar = Null;
    private   $priv_bar = Null;
    public function __construct(){
        $this->pub_bar  = new childClass();
        $this->prot_bar = new childClass();
        $this->priv_bar = new childClass();
    }
}
class childClass {
    public    $pub  = 'publicChild';
    protected $prot = 'protectedChild';
    private   $priv = 'privateChild';
}
$parent = new parentClass();
echo http_build_query($parent);
?>

阅读全文 »

URL 函数 rawurldecode 对已编码的 URL 字符串进行解码

发表日期:2021-07-01 08:56:30 | 来源: | 分类:URL 函数

      示例1
<?php 
echo rawurldecode('foo%20bar%40baz');
 // foo bar@baz?>

阅读全文 »

全部博文(1589)
集速网 copyRight © 2015-2025 宁ICP备15000399号-1 宁公网安备 64010402001209号
与其临渊羡鱼,不如退而结网
欢迎转载、分享、引用、推荐、收藏。