السلام عليكم
كيف اجعل الفنكشن التالي يعمل فقط في حالة كانت قيمة المتغير ل send تساوي 1
يعني كذا
فلو كانت واحد اذ الفنكشن التالي يشتغل
كود PHP:
function SmartCensor($content){
$words_list=@file(_ROOT_PATH.'/censorwords.txt');
$search=array('a','b','i','l','o','p','s');
$replace=array('(?:a|\@|\*)','(?:b|8|3|\*)','(?:i|1|l|\!|\*)','(?:l|1|i|\!|\*)','(?:o|0|\*)','(?:p|\?|\*)','(?:s|\$|\*)');
foreach($words_list as $badword){
$badword=rtrim($badword);
$len=strlen($badword);
if($len <= 0)
continue;
$rep='';
for($i=0; $i < $len; $i++){
$rep.='*';
}
// Check to see if this word has brackets around it. If it is bracked, censor it in a simple form.
if (substr($badword, 0, 1) == "[" && substr($badword, ($len - 1), 1) == "]") {
$content = preg_replace("@".substr($badword, 1, ($len - 2))."@i", substr($rep, 0, (strlen($rep) - 2)), $content);
continue;
}
$badwordpreg=preg_split('//', $badword, -1, PREG_SPLIT_NO_EMPTY);
$badwordpreg=str_replace($search, $replace, $badwordpreg);
$badword='';
for($i=0; $i < count($badwordpreg); $i++){
$badword.=$badwordpreg[$i];
if($i != (count($badwordpreg)-1)) $badword.='(.{0,5})';
}
$badword="/$badword/i";
$content=preg_replace($badword, $rep, $content);
}
return $content;
}