إضافة أزواج (مفتاح-قيمة) جديدة
جزء من قسم الأساسيات في رحلة PHP على Coddy. الدرس 44 من 71.
لقد تعلمت كيفية تعديل القيم الموجودة في associative array. لكن ماذا يحدث عندما تعيّن قيمة إلى key غير موجود بعد؟ ينشئها PHP تلقائيًا من أجلك.
<?php
$person = [
"name" => "Alice",
"age" => 25
];
$person["city"] = "Paris";
$person["job"] = "Developer";
echo $person["city"]; // باريس
echo $person["job"]; // مطور
?>البنية النحوية هي نفسها المستخدمة في التعديل، $array["key"] = value، ولكن عندما لا يكون المفتاح موجودًا، تضيف PHP زوجًا جديدًا من المفتاح والقيمة إلى المصفوفة بدلًا من تحديث زوج موجود.
يكون هذا مفيدًا بشكل خاص عند إنشاء مصفوفة associative تدريجيًا:
<?php
$settings = [];
$settings["theme"] = "dark";
$settings["language"] = "en";
$settings["notifications"] = true;
echo $settings["theme"]; // dark
?>البدء بمصفوفة فارغة وإضافة أزواج عند الحاجة هو نمط شائع عند جمع البيانات بمرور الوقت أو عندما لا تعرف جميع المفاتيح مسبقًا.
التحدي
سهلابدأ بمصفوفة ترابطية فارغة تُسمّى $profile.
اقرأ المدخلات التالية:
- سلسلة نصية
key1- المفتاح الأول المراد إضافته - سلسلة نصية
value1- قيمةkey1 - سلسلة نصية
key2- المفتاح الثاني المراد إضافته - سلسلة نصية
value2- قيمةkey2 - سلسلة نصية
key3- المفتاح الثالث المراد إضافته - سلسلة نصية
value3- قيمةkey3
أضف كل زوج مفتاح-قيمة إلى مصفوفة $profile، ثم اطبع:
- القيمة المرتبطة بـ
key1 - القيمة المرتبطة بـ
key2 - القيمة المرتبطة بـ
key3
اطبع كل نتيجة في سطر منفصل.
مثال:
إذا كانت المدخلات هي username وalice123 وemail وalice@example.com وstatus وactive، فيجب أن يكون الناتج:
alice123
alice@example.com
activeإذا كانت المدخلات هي brand وNike وsize و42 وcolor وblack، فيجب أن يكون الناتج:
Nike
42
blackجرّب بنفسك
<?php
// اقرأ المدخلات
$key1 = trim(fgets(STDIN));
$value1 = trim(fgets(STDIN));
$key2 = trim(fgets(STDIN));
$value2 = trim(fgets(STDIN));
$key3 = trim(fgets(STDIN));
$value3 = trim(fgets(STDIN));
// ابدأ بمصفوفة ترابطية فارغة
$profile = [];
// TODO: اكتب الكود الخاص بك أدناه
// أضف كل زوج مفتاح-قيمة إلى المصفوفة $profile
// اطبع القيم المرتبطة بكل مفتاح
echo $profile[$key1] . "\n";
echo $profile[$key2] . "\n";
echo $profile[$key3] . "\n";
?>يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4معاملات المقارنة والمنطق
معاملات المقارنةالمساواة والتطابقالمعاملات المنطقية - الجزء الأولالمعاملات المنطقية - الجزء الثانيمراجعة - المنطق البسيط7المصفوفات الجزء الثاني - الترابطية
مقدمة في المصفوفات الترابطيةالوصول إلى القيم عبر المفتاحتعديل القيم عبر المفتاحإضافة أزواج (مفتاح-قيمة) جديدةالتحقق من وجود المفتاحملخص - مخزن بيانات (مفتاح-قيمة)2المتغيرات وأنواع البيانات
الأرقامالنصوص وعلامات الاقتباسالقيم المنطقية (Booleans)قواعد التسميةملخص - تهيئة المتغيراتالمتغيرات الفارغةدمج النصوصاستقبال مدخلات المستخدمتحويل أنواع البيانات5المنطق الشرطي
جملة Ifجملة If - Elseالعامل الثلاثي (Ternary Operator)عامل Null Coalescingجملة Switchمراجعة - اتخاذ القرارات3المعاملات الأساسية
المعاملات الحسابيةمعامل باقي القسمةمعامل الأسالتعيين المركبالزيادة والنقصانأسبقية المعاملاتمراجعة - الحسابات البسيطةمعاملات النصوصتدرّب بنفسك: مترجم PHP عبر الإنترنت