首頁  >  文章  >  後端開發  >  $_GET['cat'],$_GET['dog']在什麼情況下 $v3才等於1?

$_GET['cat'],$_GET['dog']在什麼情況下 $v3才等於1?

WBOY
WBOY原創
2016-08-04 09:20:351354瀏覽

<code>$v3 = 0;

$c=@$_GET['cat'];
$d=@$_GET['dog'];
if(@$c[1]){
    
    if(!strcmp($c[1],$d) && $c[1]!==$d){
        echo $d.$c[0];
        eregi("3|1|c",$d.$c[0])?die("nope"):NULL;
        strpos(($c[0].$d), "htctf2016")?$v3=1:NULL;
    }
}

</code>

$_GET['cat'],$_GET['dog']在什麼情況下 $v3才等於1?

回覆內容:

<code>$v3 = 0;

$c=@$_GET['cat'];
$d=@$_GET['dog'];
if(@$c[1]){
    
    if(!strcmp($c[1],$d) && $c[1]!==$d){
        echo $d.$c[0];
        eregi("3|1|c",$d.$c[0])?die("nope"):NULL;
        strpos(($c[0].$d), "htctf2016")?$v3=1:NULL;
    }
}

</code>

$_GET['cat'],$_GET['dog']在什麼情況下 $v3才等於1?

這題是PHP弱類型的造成的,這裡用到的技巧是,array和string進行strcmp比較的時候會回傳一個null,%00可以截斷eregi。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn