در ابتدا ارایه ای ساخته شده که شامل حروف a - e هستش و سپس با تابع array_push به این ارایه حرف f رو هم اضافه کرده و در خروجی مشاهده میکنید که یک عنصر جدید به ارایه اضافه شده
و بعد از این با تابع array_pop اخرین عنصر از ارایه ای که f به اون اضافه شده حذف کردم مشاهده میکنید دوباره همان ارایه اول رو به ما داده و خروجیهای این دو تابع درون تابع A ریخته شده و وردامپ شده
دقیقا شما کجا ایراد دارین ؟
میثم۱۹ تیر ۱۳۹۹، ۱۴:۰۱
سلام و عرض ادب میثم جان. ببخشید که همیشه زحمت سوالات من گردن شماست. آره کلیت موضوع رو متوجه شدم. مشکلم اونجاییه که طبق گفته استاد، این دو خط توی مثال ویدیو:
A(array_push($arr3,"pink","brown"));
و
array_push($arr3,"pink","brown");
A($arr3);
نتایج متفاوتی رو میدن (کد دوم شبیه همون کدیه که شما زحمت کشیدین نوشتین، اولی اما نتیجه ۶ رو برمیگردونه و به عبارتی count میکنه) همین منوال برای تابع array_pop هم هست. من هر چی ساختار تابع A رو نگاه کردم علت تفاوت رو نفهمیدم.
امیرحسین شکری۱۹ تیر ۱۳۹۹، ۱۸:۵۳
خواهش میکنم تا جایی که بتونم به هرکدوم از دوستان سوالی داشته باشن و بلد باشم جواب میدم امید وارم مفید باشه.
به دلیل اینکه زمانی که شما تابع array_pop و نیز array_push رو مستقیم داخل تابع A میزارید تعداد عنصرها رو بر میگردونه.
تابع A مشکلی نداره
شما دقت کنید زمانی که بصورت مستقیم میزارید خروجی خود تابع array_push رو براتون بر میگردونه که تعداد عناصر ارایس.
اما شما زمانی که
$arr3
رو داخل تابع A میریزید خود ارایه ای که داخلش تغیری ایجاد کردید دارید ور دامپ میکنید