PDA

View Full Version : کم کردن دو آرایه از هم



Salazar.mi
سه شنبه 10 دی 1398, 17:53 عصر
سلام
امیدوارم حالتون خوب باشه
من دو تا آرایه دارم خروجی print_r ام این مدلیه
بینشون , نیست این یعنی چی؟
یعنی یه آرایه دارم با سه تا خانه؟؟؟؟


$a=Array ( [hpfcso] => 14 [from] => 15 [miller] => 15)
$b=Array ( [from] => 5 [hpfcso] => 4 [com] => 25)


میخواهم بیاد کلیدهاشونو با هم مقایسه کنه اونایی که کلیدهاشون با هم برابر هست را مقدارشونو که عددی هست از هم کم کنه و اگر شباهت نداشتن همون ها را با همون کلید و مقدار تو آرایه جدید مثلا اینجا c بزاره


$c=Array ( [from] => 10 [hpfcso] => 10 [miller] => 15 [com] => 25)

اصلا میتونه
ممنون میشم کمکم کنید
تشکر

ASHKANLAEI
سه شنبه 10 دی 1398, 18:01 عصر
اون هایی که مشابه هستن جوابشون a - b میشه یا این که هر کدوم بزرگ تر بود رو منهای اون یکی کنه؟

Salazar.mi
سه شنبه 10 دی 1398, 18:25 عصر
بی نهایت ممنونم که جواب دادین
ببخشید اشتباه شد
نه فقط هدف اینه که a-b بشه
ببخشید اشتباه گفتم

ASHKANLAEI
سه شنبه 10 دی 1398, 18:32 عصر
$arr = array_merge_recursive($a, $b);
foreach($arr as $key => $val) {
if(is_array($val)) {
$arr[$key] = abs($val[0] - $val[1]);
}
}
print_r($arr);

Salazar.mi
سه شنبه 10 دی 1398, 18:37 عصر
کاملا درسته
واقعا ممنونم
بی نهایت سپاسگذارم
اول اومدین تشابه هاشو پیدا کردین
طبق دستور array_merge_recursive اگر کلیدهاشون یکی بود در جواب array_merge_recursive یه آرایه تشکیل میده
برای همین از


if(is_array($val))

استفاده کردین بعد مقداراشونو کم کردین
بی نهایت ممنونم
واقعا منونممممممممممممممممممممم

ASHKANLAEI
سه شنبه 10 دی 1398, 18:44 عصر
بی نهایت ممنونم که جواب دادین
ببخشید اشتباه شد
نه فقط هدف اینه که a-b بشه
ببخشید اشتباه گفتم
ببخشید الان این پستو دیدم پس خودتون تابع abs رو بردارید.

ASHKANLAEI
سه شنبه 10 دی 1398, 18:45 عصر
بی نهایت ممنونم که جواب دادین
ببخشید اشتباه شد
نه فقط هدف اینه که a-b بشه
ببخشید اشتباه گفتم

$arr = array_merge_recursive($a, $b);
foreach($arr as $key => $val) {
if(is_array($val)) {
$arr[$key] = $val[0] - $val[1];
}
}
print_r($arr);

Salazar.mi
سه شنبه 10 دی 1398, 18:51 عصر
برداشتمش
متوجه شدم
بی نهایت ممنونم
واقعا کیف کردم
بی نهایتتتتتتتتتتتتتتتتت ممنونمممممممممممممممممممم ممم

:تشویق::تشویق::تشویق::تشویق:: شویق::تشویق::تشویق::تشویق::ت ویق::تشویق::تشویق::تشویق::تش یق::تشویق::تشویق::تشویق::تشو ق:

انشالله هر چی دوست دارین خدا بهتون بده
اگر شما نبودین من هیچ تا حالا ننوشته بودم واقعا

ASHKANLAEI
سه شنبه 10 دی 1398, 18:55 عصر
خواهش میکنم به هر حال این جا برای پرسش و پاسخه دیگه.:چشمک: