Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

تعديل العناصر عبر الفهرس

جزء من قسم Fundamentals في رحلة PHP على Coddy — الدرس 37 من 71.

لقد تعلمت كيفية الوصول إلى عناصر المصفوفة عن طريق فهرسها. الآن دعنا نرى كيفية تغيير تلك العناصر. يستخدم تعديل عنصر في المصفوفة نفس صيغة الأقواس المربعة، ولكن مع عملية تعيين.

<?php
$fruits = ["Apple", "Banana", "Cherry"];

$fruits[1] = "Blueberry";

echo $fruits[1]; // Blueberry
?>

هنا، قمنا باستبدال "Banana" في الفهرس 1 بـ "Blueberry". القيمة الأصلية اختفت—المصفوفات لا تحتفظ بسجل للتغييرات.

يمكنك تعديل أي عنصر طالما أنك تعرف فهرسه (index):

<?php
$scores = [85, 90, 78];

$scores[0] = 95;  // تحديث الدرجة الأولى
$scores[2] = 82;  // تحديث الدرجة الأخيرة

echo $scores[0]; // 95
echo $scores[2]; // 82
?>

هذا مفيد عندما تحتاج إلى تحديث البيانات في قائمتك—مثل تصحيح خطأ مطبعي، أو تحديث سعر، أو تغيير حالة مستخدم. يخبر الفهرس (index) لغة PHP بالضبط بالعنصر الذي يجب استبداله، مع ترك جميع العناصر الأخرى دون تغيير.

challenge icon

التحدي

سهل

اقرأ سطراً من المدخلات يحتوي على قيم مفصولة بفاصلة تمثل قائمة من الألوان (على سبيل المثال، Red,Green,Blue,Yellow).

ثم اقرأ ثلاثة مدخلات إضافية:

  • عدد صحيح index1 يمثل الفهرس الأول المراد تعديله
  • سلسلة نصية newValue1 تمثل القيمة الجديدة لذلك الفهرس
  • عدد صحيح index2 يمثل الفهرس الثاني المراد تعديله

أنشئ مصفوفة من المدخلات المفصولة بفاصلة، ثم:

  1. قم بتعديل العنصر الموجود في index1 ليصبح newValue1
  2. قم بتعديل العنصر الموجود في index2 ليصبح Purple

اطبع عناصر المصفوفة المعدلة في أسطر منفصلة، بالترتيب من الفهرس 0 إلى الفهرس الأخير.

مثال:

إذا كانت المدخلات هي Red,Green,Blue,Yellow، و 0، و Orange، و 2، فيجب أن تكون المخرجات:

Orange
Green
Purple
Yellow

إذا كانت المدخلات هي Apple,Banana,Cherry,Mango,Kiwi، و 1، و Grape، و 4، فيجب أن تكون المخرجات:

Apple
Grape
Cherry
Mango
Purple

ورقة مرجعية

لتعديل عنصر في المصفوفة، استخدم الفهرس مع الأقواس المربعة وعملية التعيين:

<?php
$fruits = ["Apple", "Banana", "Cherry"];

$fruits[1] = "Blueberry";  // يغير "Banana" إلى "Blueberry"

echo $fruits[1]; // Blueberry
?>

يمكنك تعديل عناصر متعددة عن طريق تحديد فهارس مختلفة:

<?php
$scores = [85, 90, 78];

$scores[0] = 95;  // تحديث العنصر الأول
$scores[2] = 82;  // تحديث العنصر الأخير
?>

يتم استبدال القيمة الأصلية ولا يتم الاحتفاظ بها. تظل العناصر الأخرى في المصفوفة دون تغيير.

جرّب بنفسك

<?php
// قراءة الألوان المفصولة بفاصلة
$colorsInput = trim(fgets(STDIN));
$colors = explode(',', $colorsInput);

// قراءة مدخلات التعديل
$index1 = intval(trim(fgets(STDIN)));
$newValue1 = trim(fgets(STDIN));
$index2 = intval(trim(fgets(STDIN)));

// TODO: اكتب كودك هنا
// 1. قم بتعديل العنصر الموجود في index1 ليكون newValue1
// 2. قم بتعديل العنصر الموجود في index2 ليكون "Purple"

// طباعة كل عنصر في سطر منفصل
foreach ($colors as $color) {
    echo $color . "\n";
}
?>
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس Fundamentals