rfc:new-curl-error-functions

This is an old revision of the document!


PHP RFC: Add curl_multi_errno(), curl_share_errno() and curl_share_strerror()

Introduction

The ext/curl extension define 3 different resource types :

  • cURL handle created by php curl_init()
  • cURL Multi Handle created by curl_multi_init()
  • cURL Share Handle created by curl_share_init()

As of today, it's possible to get the last error related to a cURL handle with the curl_errno() function, but there is no way to retrieve what was the last error related to a cURL Multi/Share handle.

Proposal

Add curl_multi_errno(), curl_share_errno() and curl_share_strerror() functions to get a consistent mechanism of error retrieval across all curl resource types.

Resource type init function last error error message
cURL handle curl_init() curl_errno() curl_strerror()
cURL Multi Handle curl_multi_init() curl_multi_errno() curl_multi_strerror()
cURL Share Handle curl_share_init() curl_share_errno() curl_share_strerror()

Functions in bold are the one that do not exists and that are be introduced in this RFC.

Functions signature

int curl_multi_errno(resource $mh);
int curl_share_errno(resource $rh);
string curl_share_strerror(int $errno);

Backward Incompatible Changes

None.

Proposed PHP Version(s)

7.1

Proposed Voting Choices

Simple 50% +1 majority: “Should those functions should be added in 7.1”

Patches and Tests

rfc/new-curl-error-functions.1461973586.txt.gz · Last modified: 2017/09/22 13:28 (external edit)