fbpx

تعلم لغة php – الدرس الرابع مصفوفات بمفاتيح Arrays with keys



مصفوفات PHP هي في الواقع خرائط مرتبة ، مما يعني أن جميع قيم المصفوفات لها مفاتيح، والعناصر الموجودة داخل المصفوفة تحافظ على الترتيب. عند استخدام المصفوفات كقوائم بسيطة كما رأينا في الفصل الأخير ، يتم استخدام عداد يستند إلى الصفر لتعيين المفاتيح. كل عنصر تمت إضافته إلى الصفيف يزيد الفهرس التالي بمقدار 1.

مثال جيد لاستخدام المصفوفات مع المفاتيح هو دفتر الهاتف. لنفترض أننا نريد حفظ أرقام هواتف الأشخاص في الفصل.

$phone_numbers = [
  "Ahmad" => "415-235-8573",
  "Hicham" => "415-492-4856",
];

print_r($phone_numbers);
echo "Ahmad's phone number is " . $phone_numbers["Ahmad"] . "\n";
echo "Hicham's phone number is " . $phone_numbers["Hicham"] . "\n";

لإضافة عنصر إلى مصفوفة باستخدام مفتاح ، نستخدم عامل الأقواس ، كما تتوقع.

$phone_numbers = [
  "Ahmad" => "415-235-8573",
  "Hicham" => "415-492-4856",
];

$phone_numbers["Yacine"] = "415-955-3857";

print_r($phone_numbers);

للتحقق من وجود مفتاح داخل مصفوفة ، يمكننا استخدام وظيفة array_key_exists:

$phone_numbers = [
  "Ahmad" => "415-235-8573",
  "Hicham" => "415-492-4856",
];

if (array_key_exists("Ahmad", $phone_numbers)) {
    echo "Ahmad's phone number is " . $phone_numbers["Ahmad"] . "\n";
} else {
    echo "Ahmad's phone number is not in the phone book!";
}

if (array_key_exists("Yacine", $phone_numbers)) {
    echo "Yacine's phone number is " . $phone_numbers["Yacine"] . "\n";
} else {
    echo "Yacine's phone number is not in the phone book!";
}

إذا أردنا استخراج مفاتيح المصفوفة فقط (الأسماء) ، يمكننا استخدام الدالة array_keys.

$phone_numbers = [
  "Ahmad" => "415-235-8573",
  "Hicham" => "415-492-4856",
];

print_r(array_keys($phone_numbers));

بدلاً من ذلك ، للحصول على قيم المصفوفة فقط (أرقام الهاتف) ، يمكننا استخدام الدالة array_values.

$phone_numbers = [
  "Ahmad" => "415-235-8573",
  "Hicham" => "415-492-4856",
];

print_r(array_values($phone_numbers));

تمرين

أضف رقمًا إلى دليل الهاتف لـ Jamal، برقم 415-874-7659 ، إما بإضافته إلى تعريف المصفوفة ، أو كسطر تعليمات برمجية منفصل.

<?php
$phone_numbers = [
  "Ahmad" => "415-235-8573",
  "Hicham" => "415-492-4856",
];

print_r($phone_numbers);
?>

الحل

<?php
$phone_numbers = [
  "Ahmad" => "415-235-8573",
  "Hicham" => "415-492-4856",
];

$phone_numbers["Jamal"] = "415-874-7659";

print_r($phone_numbers);
?>

سنحصل على النتيجة التالية عند التشغيل

Array
(
    [Ahmad] => 415-235-8573
    [Hicham] => 415-492-4856
    [Jamal] => 415-874-7659
)

الدرس الخامس






Leave a Reply