摘要:
[php] view plaincopyprint?清单1.安全无暇的代码$myUsername=‘tmyer’;$arrayarrayUsers=array(‘tmyer’,‘tom’,‘tommy’);define(“GREETING”,‘Hellothere’.$myUsername);?> 但是,下面的数据元素都是有瑕疵的。清单2.不安全、有瑕疵的代码$myUsername=$_POST['username'];//tainted! $arrayarrayUsers=array($myUsername,‘tom’,‘tommy’);//tainted! defin 阅读全文
摘要:
这个陷阱在PHP里存在很久了,先看代码: <?php $array = array(1, 2, 3); foreach ($array as &$v) {} foreach ($array as $v) {} print_r($array); ?> 运行代码,得到的结果却是: Array ( [0] => 1 [1] => 2 [2] => 2 )可以发现,经过两次foreach后,最后一个元素由3变成了2。 为什么会这样呢?这是因为第一次foreach的时候$v成为了一个引用变量($array[2]),如此,当第二次foreach的时候,实际上只是在对这 阅读全文