nekooee2
Member
سلام
دوستان من کد زیر رو نوشتم که شماره موبایلها رو جدا میکنه. اما متأسفانه مشکل داره و دفعه اول آخرین شماره رو اگر تکرار شده باشه دوبار میزنه و از دفعه بعد هم هر بار رفرش کنیم یک بار دیگه شماره آخر رو میزنه در حالی شماره ای که قبلا ثبت شده دوباره نباید ثبت بشه.
میشه راهنمایی کنید ایراد کد کجاست؟
دوستان من کد زیر رو نوشتم که شماره موبایلها رو جدا میکنه. اما متأسفانه مشکل داره و دفعه اول آخرین شماره رو اگر تکرار شده باشه دوبار میزنه و از دفعه بعد هم هر بار رفرش کنیم یک بار دیگه شماره آخر رو میزنه در حالی شماره ای که قبلا ثبت شده دوباره نباید ثبت بشه.
میشه راهنمایی کنید ایراد کد کجاست؟
PHP:
//تنظيمات
$filename_S="info.txt";//نام فايل مبدأ را وارد کنيد
$filename_D="output.txt";//نام فايل مقصد را وارد کنيد
//code...
$exists_numbers_S = array();
$file_S=fopen("$filename_S", "r")or die("Error: Can't open the file.");
$file_D=fopen("$filename_D", "a+")or die("Error: Can't open the file.");
while(!feof($file_D))
{
$exists_numbers_D[]=fgets($file_D);
}
$tedad=0;
while(!feof($file_S))
{
$line=fgets($file_S);
if (preg_match("/^09([0-9]{9,13})/", $line))
{
if ( !in_array($line, $exists_numbers_S) && !in_array($line, $exists_numbers_D)) {
fwrite($file_D,"$line");
$tedad++;
$exists_numbers_S[] = $line;
}
}
}
echo '<center dir="rtl">'.$tedad.'عدد جديد ثبت گرديد</center>';
fwrite($file_D,"\n");
fclose($file_S);
fclose($file_D);