PHP.nl

curl_share_init_persistent

curl_share_init_persistent

Initialize a persistent cURL share handle

CurlSharePersistentHandle **curl_share_init_persistent** array $share_options

Initialize a cURL share handle with the given share options. Unlike , handles created by this function will not be destroyed at the end of the PHP request. If a persistent share handle with the same set of is found, it will be reused. persistentcurl_share_init``share_options

share_options A non-empty array of constants. CURL_LOCK_DATA_*

Opmerking: > is not allowed and, if specified, this function will throw a . Sharing cookies between PHP requests may lead to inadvertently mixing up sensitive cookies between users. CURL_LOCK_DATA_COOKIE

Returns a . CurlSharePersistentHandle

  • If is empty, this function throws a . share_options
  • If contains a value not matching a , this function throws a . share_options``CURL_LOCK_DATA_*``ValueError
  • If contains , this function throws a . share_options``CURL_LOCK_DATA_COOKIE
  • If contains a non-integer value, this function throws a . share_options

Voorbeeld: example

This example will create a persistent cURL share handle and demonstrate
sharing connections between them. If this is executed in a long-lived
PHP SAPI,  will survive between SAPI requests.

$sh

<?php

// Create or retrieve a persistent cURL share handle set to share DNS lookups and connections
$sh = curl_share_init_persistent([CURL_LOCK_DATA_DNS, CURL_LOCK_DATA_CONNECT]);

// Initialize the first cURL handle and assign the share handle to it
$ch1 = curl_init("http://example.com/");
curl_setopt($ch1, CURLOPT_SHARE, $sh);

// Execute the first cURL handle. This may reuse the connection from an earlier SAPI request
curl_exec($ch1);

// Initialize the second cURL handle and assign the share handle to it
$ch2 = curl_init("http://example.com/");
curl_setopt($ch2, CURLOPT_SHARE, $sh);

// Execute the second cURL handle. This will reuse the connection from $ch1
curl_exec($ch2);

?>

curl_setopt``curl_share_init