+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 پاسخ 559 بازدید
+1 امتیاز
1 پاسخ 592 بازدید
0 امتیاز
1 پاسخ 563 بازدید
+1 امتیاز
1 پاسخ 1.1هزار بازدید
0 امتیاز
1 پاسخ 1.0هزار بازدید
0 امتیاز
2 پاسخ 876 بازدید
سوال شده 11 سال قبل در برنامه نویسی توسط مسافر (922 امتیاز)
0 امتیاز
1 پاسخ 805 بازدید
+2 امتیاز
2 پاسخ 1.6هزار بازدید
0 امتیاز
1 پاسخ 435 بازدید
...