目录:
参考自:https://www.cnblogs.com/xhds/p/12587249.html#_label1
讲真,本来不想总结来着。以为自己对变量覆盖已经掌握了,,我靠结果第一个例题,就给我试了几分钟。这不对劲啊,
还是整理下来吧,加深加深印象
1.extract()变量覆盖
extract()函数,从数组中将变量导入当前的符号表。
该函数使用数组键名作为变量名,使用数组键值作为变量值。针对数组中的每个元素,将在 当前符号表中创建对应得一个变量。
注意点:
- 你传入 ?name=adam 之后,在PHP中是 $name=adam 。这个看似easy。但是我刚刚就是犯了这个错误,没有弄细致。前面有 $ ,后面没有 $ 。
- 上面一点也就解释了很多情况下我们传入session变量的时候是 _SESSION[name]=admin 。
- 一个新思路,可以使它判定的两个都为空,也就相等,就对了
例题来一个
<?php //本地复现的话,就在同文件夹下,建一个 flag.php 就好。
$flag='flag.php';
extract($_GET);
if(isset($ceshi)){
$content=trim(file_get_contents($flag));//trim是去掉两侧的空白字符
if($ceshi==$content){