+1 امتیاز
قبل در برنامه نویسی توسط (164 امتیاز)
ویرایش شده قبل توسط

فرض کنید:

آرایه اول حاوی سیب با کلید سبز و پرتقال با کلید نارنجی است

و آرایه دوم حاوی سیب با کلید سبز و موز با کلید زرد است.

آرایه که می خواهم از ترکیب این دو بدست بیاد این است:

آرایه سوم سیب با کلید سبز پرتقال با کلید نارنجی و موز با کلید زرد است.یعنی آرایه حاوی 3 عنصر است.

و یعنی 2 آرایه دو عنصری گرفت و عناصر مشترک را تکرار نکرد و یک ارایه 3 عنصری داد.

درضمن من خودم با یک حلقه و دستور merge اینکارو کردم اما فکر کنم تابع merge خروجی یک آرایه دوبعدی میده؟

چون وقتی آرایه merge رو دادم به یک حلقه دیگه که با آرایه یک بعدی مشکلی نداره خطایی زیر داد:

Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 16918796 bytes) in C:\...class.php on line 229

1 پاسخ

0 امتیاز
قبل توسط (1.1هزار امتیاز) 1 نشانه گذاری شده
انتخاب شده قبل توسط
 
بهترین پاسخ

با استفاده از تابع array_merg می توانید این کار را انجام دهید:

<?php

$arr1=array("g"=>"a","n"=>"o");
$arr2=array("z"=>"b","g"=>"a");

$arr3= array_merge($arr1, $arr2);

print_r($arr3);

?> 

خروجی:

Array
(
    [g] => a
    [n] => o
    [z] => b
)
قبل توسط (164 امتیاز)
خسته نباشید . همونطور که گفتم قبلآ اینکارو کردم اما خروجی 2بعدی.میشه بگین راه دیگهای هست.واساسآ این خطا برای چیه؟
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 16918796 bytes) in C:\...class.php on line 229
قبل توسط (1.1هزار امتیاز)
خروجی merge دو آرایه دوبعدی باید دوبعدی شود! توقع شما چیست؟
قبل توسط (164 امتیاز)
این دوآرایه یک بعدی است؟یانه؟
قبل توسط (1.1هزار امتیاز)
در sample code که من براتون گذاشتم دو آرایه یک بعدی با هم merge می شوند و خروجی نیز یک بعدی است. سوال شما هم درباره آرایه های یک بعدی است.

سوالات مشابه

+1 امتیاز
1 پاسخ 556 بازدید
+1 امتیاز
1 پاسخ 588 بازدید
0 امتیاز
1 پاسخ 558 بازدید
+1 امتیاز
1 پاسخ 1.1هزار بازدید
0 امتیاز
1 پاسخ 1.0هزار بازدید
0 امتیاز
2 پاسخ 870 بازدید
سوال شده 11 سال قبل در برنامه نویسی توسط مسافر (922 امتیاز)
0 امتیاز
1 پاسخ 801 بازدید
+2 امتیاز
2 پاسخ 1.5هزار بازدید
0 امتیاز
1 پاسخ 430 بازدید
...