私はこの次のコードを持っています:-
$unitedstatess = stristr($ad['country'], 'united states');
$unitedkingdom = stristr($ad['country'], 'united kingdom');
$canada = stristr($ad['country'], 'canada');
if (($unitedstatess != FALSE) OR ($unitedkingdom != FALSE) OR ($canada != FALSE)) { $adsptc4.=$tempcode; }
$ ad ['country']に米国、英国、またはカナダがある場合は合格するか、上記以外の値がある場合は残ります。
例:-Ad1は:(米国;英国)>次に$adsptc4として通過する必要がありますAd2は:(米国;イタリア)>次に失敗するはずです。
あなたが何かを理解していなかったら私に知らせてください。
<?
$ad['country'] = "United States;canada";
$allowed = array(
'united states' => true,
'united kingdom' => true,
'canada' => true
);
$countries = strtolower($ad['country']);
$countries = explode(";", $countries);
$found = false;
foreach($countries as $c) {
if(isset($allowed[$c]) == FALSE) {
$found = true;
break;
}
}
if($found != true) {
echo "true";
}
else {
echo "false";
}
?>
うまくいきます。欠点があるかどうか教えてください。