我正在为 cURL 编写一个包装类,当您设置一个选项时,它会将选项名称保存到一个数组中,以便我可以管理设置了哪些选项。
问题是 cURL 选项名称是常量,它们实际上是整数,所以我无法真正分辨出哪些选项已设置。
课堂摘录:
class Curl {
protected $_options;
public function setOption($name, $value) {
$result = curl_setopt($this->_handle, $name, $value);
if ($result) {
$this->_options[$name] = $value;
}
return $result;
}
}
假设我设置了以下选项:
array(
CURLOPT_CONNECTTIMEOUT => 10,
CURLOPT_HEADER => 0,
CURLOPT_POST => 1,
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_TIMEOUT => 30
)
然后Curl::_options
将看起来像:
array(
(int) 78 => (int) 10,
(int) 42 => (int) 0,
(int) 47 => (int) 1,
(int) 19913 => (int) 1,
(int) 13 => (int) 30
)
如何获取 cURL 常量的实际名称?这可能使用反射类吗?