
نوشته شده توسط
$ M 3 H R D A D $
<?php
$string = 'kjaklhdkjhsdkjahsdkjahdkjahdjakdhjakopopf';
$ar = array("kl","op","qw","opfk");
foreach($ar as $value)
{
if(strlen(strstr($string,$value))>0)
echo $value." Is availble is string.<br/>";
}
?>
بهتره بجای مقایسه بصورت 0 < به شکل زیر مقایسه کنید:
if(strlen(strstr($string,$value)) !== false)
چون در حالت اول، اگه مکان رشته پیدا شده در همون ابتدای رشته اصلی باشه، شرط 0 < اشتباه میشه درحالی که رشته پیدا شده. حتی =! هم نباید استفاده بشه چون اون هم صفر رو با false یکسان درنظر میگیره و حتماً باید از ==! استفاده کنید تا علاوه بر مقدار، نوع هم بررسی بشه و فقط درصورتی که دقیقاً false برگردونده بشه، شرط اشتباه در بیاد.
-----
پاورقی: راستی، هرچند به PHP ربطی نداره ولی بهتره توی پیغام هم از exists بجای is available استفاده کنید چون exists یعنی «وجود دارد» ولی is available یعنی «در دسترس (قابل استفاده) است».