الفرق بين المراجعتين ل"PHP/array merge"

من موسوعة حسوب
< PHP
اذهب إلى التنقل اذهب إلى البحث
ط (استبدال النص - 'PHP/Function/array' ب'PHP/array')
ط (نقل عبد اللطيف ايمش صفحة PHP/Function/array-merge إلى PHP/array merge: إعادة هيكلة التوثيق)
 
(4 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة)
سطر 71: سطر 71:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
إذا أردت إضافة عناصر من مصفوفة إلى مصفوفة أخرى دون أن تمحو قيم المصفوفة الاولى ودون إعادة ترقيم المفاتيح العددية يمكنك استخدام [[PHP/Operators/array|معامل اتحاد المصفوفات]] <code>+</code>:<syntaxhighlight lang="php">
+
إذا أردت إضافة عناصر من مصفوفة إلى مصفوفة أخرى دون أن تمحو قيم المصفوفة الاولى ودون إعادة ترقيم المفاتيح العددية يمكنك استخدام [[PHP/array operators|معامل اتحاد المصفوفات]] <code>+</code>:<syntaxhighlight lang="php">
  
 
<?php
 
<?php
سطر 97: سطر 97:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
المثال 3: الدمج مع عناصر ليست من النوع [[PHP/Types/array|array]]<syntaxhighlight lang="php">
+
المثال 3: الدمج مع عناصر ليست من النوع [[PHP/array|array]]<syntaxhighlight lang="php">
  
 
<?php
 
<?php
سطر 117: سطر 117:
  
 
== انظر أيضًا ==
 
== انظر أيضًا ==
* الدالة <code>[[PHP/array-merge-recursive|array_merge_recursive()‎]]</code>: تدمج مصفوفة واحدة أو أكثر بشكل تكراري.
+
* الدالة <code>[[PHP/array_merge_recursive|array_merge_recursive()‎]]</code>: تدمج مصفوفة واحدة أو أكثر بشكل تكراري.
* الدالة <code>[[PHP/array-replace-recursive|array_replace_recursive()‎]]</code>: تستبدل عناصر من المصفوفات المُمَرََرَة إلى المصفوفة الأولى بشكل تكراري (recursively).
+
* الدالة <code>[[PHP/array_replace_recursive|array_replace_recursive()‎]]</code>: تستبدل عناصر من المصفوفات المُمَرََرَة إلى المصفوفة الأولى بشكل تكراري (recursively).
* الدالة <code>[[PHP/array-combine|array_combine()‎]]</code>: تنشئ مصفوفة جديدة عن طريق استخدام إحدى المصفوفات للمفاتيح وأخرى للقيم.
+
* الدالة <code>[[PHP/array_combine|array_combine()‎]]</code>: تنشئ مصفوفة جديدة عن طريق استخدام إحدى المصفوفات للمفاتيح وأخرى للقيم.
* [[PHP/Operators/array|معاملات المصفوفات]].
+
* [[PHP/array operators|معاملات المصفوفات]].
  
 
== مصادر ==
 
== مصادر ==

المراجعة الحالية بتاريخ 03:49، 4 أبريل 2018

(PHP 4, PHP 5, PHP 7)

تدمج الدالة array_merge()‎ مصفوفتين أو أكثر.

الوصف

array array_merge ( array $array1 [, array $... ] )

تدمج الدالة عناصر مصفوفة أو أكثر بحيث تضيف عناصر المصفوفة إلى عناصر المصفوفة السابقة لها. تعيد الدالة المصفوفة الناتجة والمحتوية على عناصر كل المصفوفات.

إذا احتوت المصفوفة على مفاتيح متماثلة في التمثيل النصي، فستضيف الدالة العناصر المرتبطة بالمفاتيح التالية لتأخذ مكان القيم السابقة المسجلة مع المفتاح. إذا احتوت المصفوفة على نفس المفتاح العددي فإن قيمة العنصر المرتبط به لن تمحو قيمة العنصر الأول وإنما ستُضاف معه.

ستعيد الدالة ترقيم المفاتيح العددية الموجودة بالمصفوفات تصاعديًا بدءًا من العدد صفر في المصفوفة المعادة.

المعاملات

array1

المصفوفة التي ستدمجها الدالة.

قائمة متغيرة من المصفوفات التي ستدمجها الدالة.

القيم المعادة

تعيد مصفوفة من القيم الناتجة عن دمج المصفوفات المُمرَّرة إلى الدالة.

أمثلة

المثال 1: مثال بسيط عن الدالة array_merge()‎

<?php
$array1 = array("color" => "red", 2, 4);
$array2 = array("a", "b", "color" => "green", "shape" => "trapezoid", 4);
$result = array_merge($array1, $array2);
print_r($result);
?>

نتيجة المثال السابق:

Array
(
    [color] => green
    [0] => 2
    [1] => 4
    [2] => a
    [3] => b
    [shape] => trapezoid
    [4] => 4
)

المثال 2: مثال بسيط آخر عن الدالة array_merge()

<?php
$array1 = array();
$array2 = array(1 => "data");
$result = array_merge($array1, $array2);
?>

لا تنسَ أنَّ المفاتيح العددية سيُعاد ترقيمها.

Array
(
    [0] => data
)

إذا أردت إضافة عناصر من مصفوفة إلى مصفوفة أخرى دون أن تمحو قيم المصفوفة الاولى ودون إعادة ترقيم المفاتيح العددية يمكنك استخدام معامل اتحاد المصفوفات +:

<?php
$array1 = array(0 => 'zero_a', 2 => 'two_a', 3 => 'three_a');
$array2 = array(1 => 'one_b', 3 => 'three_b', 4 => 'four_b');
$result = $array1 + $array2;
var_dump($result);
?>

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

array(5) {
  [0]=>
  string(6) "zero_a"
  [2]=>
  string(5) "two_a"
  [3]=>
  string(7) "three_a"
  [1]=>
  string(5) "one_b"
  [4]=>
  string(6) "four_b"
}

المثال 3: الدمج مع عناصر ليست من النوع array

<?php
$beginning = 'foo';
$end = array(1 => 'bar');
$result = array_merge((array)$beginning, (array)$end);
print_r($result);
?>

نتيجة المثال السابق:

Array
(
   [0] => foo
   [1] => bar
)

انظر أيضًا

مصادر