我有PHP数组:
$curl_options = array(
CURLOPT_PORT => 80,
CURLOPT_CONNECTTIMEOUT => 10,
CURLOPT_TIMEOUT => 30
);
然后我添加新元素并更改一些值:
$curl_options[CURLOPT_USERAGENT] = "Opera/9.02 (Windows NT 5.1; U; en)";
$curl_options[CURLOPT_PORT] = 90;
此更改后数组变为
$curl_options = array(
CURLOPT_PORT => 90,
CURLOPT_CONNECTTIMEOUT => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_USERAGENT => Opera/9.02 (Windows NT 5.1; U; en)
);
如何将数组重置为默认值?到
$curl_options = array(
CURLOPT_PORT => 80,
CURLOPT_CONNECTTIMEOUT => 10,
CURLOPT_TIMEOUT => 30
);
感谢。
答案 0 :(得分:2)
您需要复制数组:
$curl_options = array(
CURLOPT_PORT => 80,
CURLOPT_CONNECTTIMEOUT => 10,
CURLOPT_TIMEOUT => 30);
$copy = $curl_options;
$curl_options[CURLOPT_USERAGENT] = "Opera/9.02 (Windows NT 5.1; U; en)";
$curl_options[CURLOPT_PORT] = 90;
// Reset
$curl_options = $copy;
答案 1 :(得分:2)
执行此操作的唯一方法是使用原始数据覆盖数组,因此请再次运行:
$curl_options = array(
CURLOPT_PORT => 80,
CURLOPT_CONNECTTIMEOUT => 10,
CURLOPT_TIMEOUT => 30);
PHP不会存储任何修订数据或类似内容,因此您无法反转数组更改。
答案 2 :(得分:2)
“true”方法是创建一个返回所需数组的函数getDefaultOptions。
答案 3 :(得分:0)
制作2个独立的阵列 - 1)默认2)扩展。
$curl_options_default = array(
CURLOPT_PORT => 80,
CURLOPT_CONNECTTIMEOUT => 10,
CURLOPT_TIMEOUT => 30
);
$curl_options[CURLOPT_USERAGENT] = "Opera/9.02 (Windows NT 5.1; U; en)";
$curl_options[CURLOPT_PORT] = 90;
$curl_options_new = array_replace($curl_options_default, $curl_options);
现在您有2个数组:未接触$curl_options_default
和新数组(包含扩展/替换元素)$curl_options_new