آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
مشکل عدم دسترسی خریداران پیشین به برخی آموزش ها برطرف شد
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

سوال در مورد foreach

alisajadi  7 سال پیش  7 سال پیش
0 0

سلام.

اونطور که متوجه شدم حلقه foreach به این صورت هست که داخل پرانتز ابتدا نام آرایه رو می نویسیم و بعد as و بعد نام متغیر.

سوالم مربوط به حلقه foreach در تصویر زیر هست. کدی هست که استاد نوشته بود و خودم هم نوشتم.

اینجا که ما آرایه divisions نداریم؟

ما متغیر division تعریف نکردیم که؟

چرا division قبل از حلقه $ نداره اما division های داخل حلقه $ دارن؟

میشه یه بار حلقه foreach رو به فارسی بنویسین؟

ممنونم.

 برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال 
MOJTABA  7 سال پیش
+1 0

اگر دقت کنین در خط 10 یک تابع تعریف کردین به نام division با ورودی متغیری به نام number , در خط بعدی ( خط 11 ) شما یک آرایه تعریف کردین به نام output که توی خط 17 اون رو به عنوان خروجی تابع برمی گردونین.

در خط بعدی ( خط 19 ) شما یک متغیر به نام divisions$ ساختین که مساوی هست با خروجی تابع division با ورودی 1000:

 $divisions = division(1000);

یعنی output توی متغیر divisions$ ریخته میشه. توی php متغیر ها نوعشون معلوم نیست تا وقتی که توشون اطلاعاتی بریزیم یا نوعشون رو معلوم کنیم.

حلقه foreach : قبل از کلمه کلیدی as آرایه divisions$ قرار گرفته و بعد از as , یه متغیر که نماینده هر عضو از آرایه divisions$ هست رو داریم که توی حلقه از اون استفاده می کنیم . به جمع بودن اسم divisions$ و جمع نبودن اسم متغیر division$ دقت کنین 

  foreach( $divisions as $division ){
         echo $division;
}

UPDATE :

طبق نکته ای که بالا هم بهش اشاره کردم -> توی PHP نوع متغیر ها معلوم نیست تا وقتی که توشون اطلاعات بریزیم . توی خط (divisions = division(1000 متغیر divisions$ نوع مشخص شد که یک آرایه است . چه جوری مشخص شد ؟ از خروجی تابع (division(1000 که یک آرایه هست فهمیدیم.



0 0
خیلی ممنونم از پاسختون و وقتی که گذاشتید. تا حدودی متوجه شدم. اما این سوال برام پیش اومده: در foreach ابتدا باید نام آرایه بنویسیم و بعد as و ... اما اینجا که ما آرایه divisions نداریم؟ یعنی من توقع دارم که قبل از حلقه آرایه division تعریف کنیم و در حلقه فقط این آرایه رو نام ببریم. (7 سال پیش)
0 0
خیلی ممنونم از پاسختون و وقتی که گذاشتید. تا حدودی متوجه شدم. اما این سوال برام پیش اومده: در foreach ابتدا باید نام آرایه بنویسیم و بعد as و ... اما اینجا که ما آرایه divisions نداریم؟ یعنی من توقع دارم که قبل از حلقه آرایه division تعریف کنیم و در حلقه فقط این آرایه رو نام ببریم. اما اینطور نیست. (7 سال پیش)
0 0
(7 سال پیش)
0 0
(7 سال پیش)
0 0
پیامتون ناقص اومده. ممنون میشم دوباره پاسخ بدین. (7 سال پیش)
0 0
(7 سال پیش)
پاسخ به سوال 
alisajadi  7 سال پیش
0 0

در foreach ابتدا باید نام آرایه بنویسیم و بعد as و ... اما اینجا که ما آرایه divisions نداریم؟ یعنی من توقع دارم که قبل از حلقه آرایه division تعریف کنیم و در حلقه فقط این آرایه رو نام ببریم. اما اینطور نیست.

ممنون میشم راهنمایی کنین.

+1 0
توی UPDATE ادامه ی جواب بالا سوالتون رو جواب دادم (7 سال پیش)

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .