توابع php - کار با آرایه ها

دسته بندی: آموزش
زمان مطالعه: ۲ دقیقه
۰۱ شهریور ۱۳۹۳

قبل از اینکه این جلسه رو شروع کنیم، لازمه از همه ی دوستانی که با لطف و محبتشون نسبت به بنده، عرض تسلیت داشتند، صمیمانه سپاسگذاری کنم . امیدوارم که خداوند متعال روح این عزیز از دست رفته رو قرین رحمت و مغفرت خودش قرار بده .

در جلسه ی امروز می خوایم در مورد کار با آرایه ها صحبت کنیم و توابع مهم PHP در این زمینه رو معرفی کنیم . در پایان این جلسه هم یه مینی پروژه ی کوچیک رو داریم که در اون لیستی از مخاطبین رو بر اساس نا، شماره تماس و جنسیتشون جستجو می کنیم .

:: مطالب مطرح شده در این جلسه عبارتند از :

توابع کار با آرايه ها در PHP :

  • ساخت يک آرايه
  • شمارش تعداد عناصر آرايه
  • چک کردن وجود يک کليد در آرايه
  • چک کردن حضور يک مقدار در آرايه
  • دريافت همه يا بخشي از کليد هاي يک آرايه
  • دريافت همه ي مقادير موجود در آرايه
  • تغير حروف همه ي کليدهاي آرايه
  • شکستن آرايه به چند بخش
  • ايجاد يک آرايه با ترکيب دو آرايه ي کليدها و مقادير
  • دريافت تعداد تکرار اعضاي آرايه
  • بدست آوردن تفاوت دو آرايه با همديگر
  • پر کردن بخشي از آرايه با مقادير خاص
  • فيلتر کردن اعضاي ارايه با استفاده از يک تابع callback
  • جابجايي کليدها و مقادير يک آرايه با همديگر
  • محاسبه ي اشتراک دو آرايه
  •  ادغام و اجتماع دو آرايه
  • مخلوط کردن آرايه به صورت تصادفي
  • توابع مرتب سازي آرايه ها
  • پرکردن آرايه از مقادير تا طول خاص
  • اضافه کردن يک عنصر به انتهاي آرايه
  • برداشتن آخرين عضو آرايه
  • محاسبه ي حاصل جمع و ضرب کل عناصر آرايه
  • برداشتن يک يا چند عنصر از آرايه به صورت تصادفي و رندم
  • جايگزيني عناصر آرايه با عناصر يک آرايه ي ديگر
  • معکوس کردن آرايه
  • جستجو در آرايه
  • دريافت يک زير آرايه از آرايه ي بزرگتر
  • حذف عناصر تکراري از آرايه
  • اعمال يک تابع براي اجرا بر روي تک تک عناصر آرايه
  • استخراج متغير از اعضاي آرايه
  • ميني پروژه : مديريت، جستجو و فيلتر کردن جدول مخاطبين تلفن
  • تمرين
:: توجه

این مطلب یک جلسه از آموزش PHP می باشد و برای مشاهده آن باید در دوره ثبت نام کنید.

ثبت نام در آموزش PHP

نویسنده
بیش از 15 سال هست که برنامه نویسی می کنم و از بین همه زبون هایی که کار کردم جاوا، اسمبلی و php رو دوست دارم. دانشجوی دکترای نرم افزارم و توی دانشگاه روی پردازش بیگ دیتا و پردازش موازی کار کردم و عاشق چالش از هر نوعیش هستم! سون لرن مثل بچه منه که 12 سال براش وقت گذاشتم، اینجا همه تلاش می کنیم از شروع یادگیری تا ورود به بازر کار حوزه برنامه نویسی و IT همراهتون باشیم.

جلسات دوره

نظرات کاربران

ppp

سلام استاد اوند
استاداوند می خوام دو تا ارایه رو تفریق کنم و سه شبانه روز رو این مشکل کار کردم تابع های زیادی رو امتحان کردم زیاد سرچ کردم اما نتونستم که نتونسم حتی از برنامه نویس های حرفه ای هم پرسیدم اما نتونستن مشکل بنده رو حل کنن
حتی در انجمن و گروه برنامه نویس هم گفتم اما کسی جواب نداد

مشکل من اینه این عکسو ببینید .
http://rozup.ir/view/2305047/kopr.png

از تابع array_diffهم استفاده کردم اما این مشکلو داره که از اول ارایه دو تا حذف میکنه در حالی که من میخوام مشابه اون ارایه دومی در ارایه اولی حذف بشه .

ممنونتون میمشم استاد

لقمان آوند

اینجور مواقع باید خودتون الگوریتمشو در بیارید. خدمت شما :

function myArrayDiff($arr1,$arr2){
	$ar2Ids = array();
	foreach($arr2 as $a2){
		$ar2Ids[] = $a2[‘id’];
	}

	$resultArr = array();
	foreach($arr1 as $a1){
		if(!in_array($a1[‘id’],$ar2Ids)){
			$resultArr[] = $a1;			
		}
	}
	return $resultArr;
}

$arr1 = array(
	array(‘id’=> 1 , ‘title’=> “title1”,’hex’=> “h1”),
	array(‘id’=> 2 , ‘title’=> “title2”,’hex’=> “h2”),
	array(‘id’=> 3 , ‘title’=> “title3”,’hex’=> “h3”),
	array(‘id’=> 4 , ‘title’=> “title4”,’hex’=> “h4”),
);
$arr2 = array(
	array(‘id’=> 1 , ‘title’=> “title1”,’hex’=> “h1”),
	array(‘id’=> 3 , ‘title’=> “title3”,’hex’=> “h3”),
);

$myDiff = myArrayDiff($arr1,$arr2);
print_r($myDiff);
Pourya Ariyafar

سلام استاد
من اومدم از تابع array_walk استفاده کردم تا مقادیر یک آرایه رو به حروف بزرگ تبدیل کنم، ب نظرم همه چی رو درست نوشتم ولی در خروجی فقط مقدار true رو میگیرم درحالی که من میخوام مقادیر آرایه با حروف بزرگ چاپ شن
اینم کد

 http://bayanbox.ir/view/8121069528296842138/d3.jpg

ممنون

لقمان آوند

مقدار برگشتی تابع array_walk یا true هست یا فالس …
با این تابع شما صرفا می تونید یک تابع خاص رو رو تک تک عناصر ارایه صدا بزنید.
در واقع شما باید بعدش خو آرایه رو چاپ کنید و ببینید …
یا اینکه تو toUpper مقدار بزرگ شده رو چاپ می کردید .

لقمان آوند

سلام
بهشون تذکر دادیم و قرار شد بردارن.
متاسفانه بعضی ها خیلی راحت حق الناس رو می خورن …

پایان زمان پشتیبانی

دانشجوی گرامی، بازه پشتیبانی فعال برای این دوره ۳ ماه است که برای شما به پایان رسیده است.

شما هم چنان می توانید سوالات خود را در این قسمت بپرسید اما اولویت پاسخ گویی با دانشجویانی است که بازه پشتیبانی فعال دارند.

نیاز به لاگین

برای ارسال دیدگاه و یا پرسیدن سوال خود در این قسمت، باید در سایت لاگین شوید.
گزارش مشکل