✅ 1. count() – لحساب عدد العناصر
$colors = ["أحمر", "أخضر", "أزرق"];
echo count($colors); // 3PHP✅ الفائدة: معرفة حجم المصفوفة مفيد جدًا قبل التكرار باستخدام
for.
✅ 10. is_array() – التحقق هل القيمة مصفوفة
$test = ["PHP", "JS"];
var_dump(is_array($test)); // true
$name = "ياسين";
var_dump(is_array($name)); // falsePHP✅ الفائدة: مفيدة للتحقق قبل استخدام دوال المصفوفات.
✅ 11. array_key_exists() – التحقق من وجود مفتاح
$user = ["name" => "ياسين", "age" => 25];
if (array_key_exists("name", $user)) {
echo "الاسم موجود";
}PHP⚠️ محذور: المفتاح يمكن أن يكون موجودًا ولكن القيمة
null، لذلك الفرق بينها وبينisset().
✅ 12. in_array() – التحقق من وجود قيمة
$colors = ["أحمر", "أخضر", "أزرق"];
if (in_array("أخضر", $colors)) {
echo "اللون موجود";
}PHP⚠️ محذور: هذه الدالة تبحث بالقيم وليس المفاتيح.
✅ 13. array_keys() و array_values()
$user = ["name" => "ياسين", "age" => 25];
print_r(array_keys($user)); // ["name", "age"]
print_r(array_values($user)); // ["ياسين", 25]PHP✅ الفائدة: تفيد عند الحاجة للوصول لقائمة المفاتيح أو القيم فقط.
✅ 14. array_merge() – دمج مصفوفتين
$a = ["PHP", "HTML"];
$b = ["CSS", "JS"];
$all = array_merge($a, $b);
print_r($all); // ["PHP", "HTML", "CSS", "JS"]PHP⚠️ محذور: إذا كانت المفاتيح ترابطية مكررة، سيتم استبدالها وليس إضافتها.
✅ 15. array_push() / array_pop()
array_push() – إضافة عناصر للنهاية:
$fruits = ["تفاح", "موز"];
array_push($fruits, "عنب", "كيوي");PHParray_pop() – إزالة العنصر الأخير:
array_pop($fruits); // يزيل "كيوي"PHP✅ ملاحظة:
array_push()تعادل$arr[] =.
✅ 16. array_shift() / array_unshift()
array_shift() – يزيل أول عنصر:
$names = ["ياسين", "سارة", "كريم"];
array_shift($names); // يحذف "ياسين"PHParray_unshift() – يضيف في البداية:
array_unshift($names, "نور");PHP✅ مفيدة في التعامل مع البيانات كسِجل زمني (Stack / Queue).
✅ 17. array_slice() – قص جزء من المصفوفة
$colors = ["أحمر", "أخضر", "أزرق", "أصفر"];
$sliced = array_slice($colors, 1, 2); // من العنصر الثاني، عدد 2
print_r($sliced); // ["أخضر", "أزرق"]PHP✅ ملاحظة: لا تعدل المصفوفة الأصلية.
✅ 18. array_splice() – حذف/استبدال جزء
$colors = ["أحمر", "أخضر", "أزرق", "أصفر"];
array_splice($colors, 1, 2, ["أسود", "رمادي"]);
print_r($colors); // ["أحمر", "أسود", "رمادي", "أصفر"]PHP✅ ميزة: تعدل المصفوفة الأصلية، ويمكن استخدامها للحذف والاستبدال.
✅ 19. array_reverse() – عكس ترتيب العناصر
$nums = [1, 2, 3];
$reversed = array_reverse($nums);
print_r($reversed); // [3, 2, 1]PHP✅ 20. array_unique() – إزالة العناصر المكررة
$values = ["PHP", "PHP", "HTML", "CSS", "CSS"];
$unique = array_unique($values);
print_r($unique);PHP⚠️ محذور: المفاتيح الأصلية لا يتم إعادة ترتيبها، وقد تحتاج
array_values()بعدها.
✅ 21. array_search() – إيجاد موقع (المفتاح) لقيمة
$names = ["أحمد", "ياسين", "نور"];
$key = array_search("ياسين", $names);
echo $key; // 1PHP⚠️ محذور: إذا لم تُوجد القيمة، سترجع
false(وليس 0).
✅ 22. array_replace() – استبدال القيم بمصفوفة أخرى
$arr1 = ["a" => "أحمر", "b" => "أخضر"];
$arr2 = ["a" => "أسود"];
$result = array_replace($arr1, $arr2);
print_r($result); // ["a" => "أسود", "b" => "أخضر"]PHP✅ ميزة: تستخدم عند الرغبة بتحديث بيانات مصفوفة ببيانات جديدة بشكل آمن.
✅ 23. sort() – ترتيب تصاعدي حسب القيمة (يفقد المفاتيح)
$numbers = [5, 2, 9, 1];
sort($numbers);
print_r($numbers); // [1, 2, 5, 9]PHP⚠️ محذور: عند استخدام
sort()، يتم إعادة ترتيب المفاتيح بشكل تلقائي (تُفقد المفاتيح الأصلية).
✅ 24. rsort() – ترتيب تنازلي حسب القيمة (يفقد المفاتيح)
$numbers = [5, 2, 9, 1];
rsort($numbers);
print_r($numbers); // [9, 5, 2, 1]PHP✅ مفيد للترتيب العكسي السريع بدون الحاجة لتكرار
array_reverse(sort(...)).
✅ 25. asort() – ترتيب تصاعدي مع الحفاظ على المفاتيح
$scores = ["ahmed" => 70, "yasin" => 90, "sara" => 80];
asort($scores);
print_r($scores);
/*
[
"ahmed" => 70,
"sara" => 80,
"yasin" => 90
]
*/PHP✅ الفائدة: مناسب عند وجود أسماء أو معرفات مرتبطة بالقيم، وتريد الحفاظ عليها.
✅ 26. ksort() – ترتيب تصاعدي حسب المفاتيح
$person = ["c" => "كريم", "a" => "أحمد", "b" => "باسل"];
ksort($person);
print_r($person);
/*
[
"a" => "أحمد",
"b" => "باسل",
"c" => "كريم"
]
*/PHP✅ مفيد إذا كانت المفاتيح عبارة عن رموز أو أحرف وتحتاج لترتيبها أبجديًا.
✅ 27. arsort() / krsort() – ترتيب تنازلي للقيم أو المفاتيح مع الحفاظ عليها
arsort() – تنازلي حسب القيمة
$grades = ["Ali" => 60, "Zein" => 90, "Lina" => 75];
arsort($grades);
print_r($grades);PHPkrsort() – تنازلي حسب المفاتيح
$grades = ["Ali" => 60, "Zein" => 90, "Lina" => 75];
krsort($grades);
print_r($grades);PHP✅ ملاحظة: ممتازة لتنظيم البيانات عند عرض تقارير أو ترتيب نتائج.
✅ 28. shuffle() – ترتيب عشوائي (يفقد المفاتيح)
$names = ["أحمد", "ليلى", "ياسين", "سارة"];
shuffle($names);
print_r($names); // كل مرة ترتيب مختلفPHP⚠️ محذور: يفقد المفاتيح، يستخدم فقط مع المصفوفات ذات مفاتيح رقمية.
✅ 29. array_rand() – اختيار عنصر أو أكثر عشوائيًا
$colors = ["أحمر", "أخضر", "أزرق", "أصفر"];
$randomKey = array_rand($colors);
echo $colors[$randomKey]; // لون عشوائيPHPلاختيار أكثر من عنصر:
$keys = array_rand($colors, 2);
echo $colors[$keys[0]] . " و " . $colors[$keys[1]];PHP✅ الفائدة: تُستخدم كثيرًا في الألعاب أو اختيار جوائز أو بيانات اختبار عشوائية.