2013-08-31 63 views
0
 if(preg_match("/^[\w_.]+$/",stripslashes($_GET['key']))) { 
     $key = $wpdb->escape(stripslashes($_GET['key'])); 
    } 

假設鍵值= be4e53680e6518cca701ec091258642f0740fe3d解釋我的preg_match如果條款請

可有人請解釋我如果條件?我很困惑它究竟是什麼檢查

好的謝謝你們澄清這件事。 現在我發佈了另一行與此相關的代碼。如果你能幫助我理解它。

 if(preg_match("/^[\w_.]+$/",stripslashes($_GET['key']))) { 
     $key = $wpdb->escape(stripslashes($_GET['key'])); 
    } else { 
     if(preg_match("/^[\w_.]+$/",$name)) { 
      $wpdb->query("some query;"); 
     } 
     exit(0); 
    } 

假設$ _GET [ '關鍵'] = be4e53680e6518cca701ec091258642f0740fe3d

$名稱= TomJones

我走到這一步是: 如果$ _GET [ '關鍵']是數字那麼$關鍵= stripslashes(get_key)

但是什麼時候其他kiks在?

回答

1

它看起來包含字母數字字符的字符串,下劃線和從請求的密鑰PARAM點,強調是因爲ommitable \ W處理它

+1

點不應該逃脫,因爲它是在一個字符類。看到這個[演示](http://regex101.com/r/cX7xQ9) – HamZa

+0

對,我的不好... – dscdsc

+0

貼了編輯到我的代碼..請檢查 – misulicus