首页 > Web开发 > 详细

php curl的隐藏BUG

时间:2018-06-26 20:34:48      阅读:202      评论:0      收藏:0      [点我收藏+]
<?php
$a = array(
    ‘a‘ => 2,
    ‘b‘ => 3,
);

$curl  = curl_init();
$b = $a;
curl_setopt_array($curl, array(
     CURLOPT_POSTFIELDS => $b
));

var_dump($a);

今天遇到一个神奇的BUG:

上述执行完以后,$a和$b里面的数据变成了字符串型

如果在$b=$a后,改变一下$b以后(比如$b[‘c‘] = 3;),$a就正常了。

个人猜测原因应该是$b=$a后,如果没有修改$b,则它们指向同一个内存区域。

 

而之所以$b的数据会变成字符串型,应该是curl_setopt_array()的BUG,PHP7以后这个BUG就不存在了

php curl的隐藏BUG

原文:https://www.cnblogs.com/liaokaichang/p/9230930.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!