オプションを設定すると、設定されているオプションを管理できるように、オプション名を配列に保存する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 定数の実際の名前を取得するにはどうすればよいですか? これはReflection クラスを使用して可能ですか?