file_put_contents() 函數(shù)把一個字符串寫入文件中。
file_put_contents()在寫入文件時的第二個參數(shù)可以傳入數(shù)組墙基,如果是數(shù)組的話,將被連接成字符串再進行寫入趾盐。在正則匹配前搬泥,傳入的是一個數(shù)組。得益于PHP的弱類型特性唯沮,數(shù)組會被強制轉換成字符串脖旱,也就是Array,Array肯定是滿足正則\A[ _a-zA-Z0-9]+\z的介蛉,所以不會被攔截萌庆。這樣就可以繞過類似檢測“
$text=$_GET['text'];
if(preg_match('[<>?]',$text)){
die('error!');
}
file_put_contents('config.php',$text,FILE_APPEND);?>? //FILE_APPEND 為可選參數(shù)。意為內容追加寫入
構造text[]=<?php phpinfo();
雖然會報錯币旧,但是 <?php?? phpinfo();仍然會被寫入config.php文件中