PDA

View Full Version : یک سوال ساده در مورد حلقه در php



shapooor
سه شنبه 13 شهریور 1397, 14:20 عصر
با سلام دوستان
یک سوال از به کارگیری حلقه در php داشتم
من یک لیست از اعداد تکراری دارم مثل زیر:
773.38
773.38
773.38
773.38
773.38
773.38
773.38
773.38
773.35
773.35
771
771
771
773.35
773.35
773.35
773.35
773.35


حالا میخوام بدونم هر عدد چندبار به صورت پشت سر هم تکرار شده، یعنی برای اعداد بالا این خروجی رو بده
8
2
3
5
حالا من این فایل رو باز میکنم و خط به خط میخونم ولی نمیدونم که حلقه ای که لازمه تا اعداد رو با هم مقایسه کنه کجا و چجوری در کد قرار بدم





$file = fopen("welcome.txt","r");
while(!feof($file))
{
echo fgets($file)."<br>";
}
fclose($file);
?>

ممنون میشم اگه دوستان کمک کنن

charcharkh
سه شنبه 13 شهریور 1397, 15:28 عصر
سلام این لیست شما چی هست آرایه یا رشته ؟؟!!!

این دوتا شاید یتونن کمک کنند بستهبه ورودی و خروجی داره

https://www.w3schools.com/php/func_string_str_word_count.asp

https://www.w3schools.com/php/func_array_count.asp

shapooor
سه شنبه 13 شهریور 1397, 17:10 عصر
سلام این لیست شما چی هست آرایه یا رشته ؟؟!!!

این دوتا شاید یتونن کمک کنند بستهبه ورودی و خروجی داره

https://www.w3schools.com/php/func_string_str_word_count.asp

https://www.w3schools.com/php/func_array_count.asp

لیست اعداد هست که در یک فایل متنی قرار دارد
هرعدد در یک خط
برنامه باید فایل رو باز کنه و خط به خط بخونه و تعداد تکرارهارو اگر مشابه خطوط قبل خودش بود بشمره، مثلا:
555
555
555
سه تا 555 پشت سر هم هست و میخوام که خروجی بده به صورت زیر:
3


همین دوست عزیز

plague
سه شنبه 13 شهریور 1397, 18:04 عصر
یه آرایه درست کن تو اون حلقه ای که داری اعداد رو از فایل میخونی بریزشون تو آرایه


$file = fopen("welcome.txt","r");
$array = [];
while(!feof($file))
{

$number = fgets($file);

if(isset($array[$number]))
$array[$number]++;
else
$array[$number] = 1 ;


}
fclose($file);


var_dump($array);

shapooor
سه شنبه 13 شهریور 1397, 18:24 عصر
یه آرایه درست کن تو اون حلقه ای که داری اعداد رو از فایل میخونی بریزشون تو آرایه


$file = fopen("welcome.txt","r");
$array = [];
while(!feof($file))
{

$number = fgets($file);

if(isset($array[$number]))
$array[$number]++;
else
$array[$number] = 1 ;


}
fclose($file);


var_dump($array);



ممنون از شما دوست گرامی بابت کدی که ارسال کردید
ولی ارور 500 میده در زمان اجرا در مرورگر
از چی میتونه باشه؟

charcharkh
چهارشنبه 14 شهریور 1397, 09:34 صبح
500 برای سرور هست بگرد ببین چی رو اشتباه زدی