第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

比較并組合多維數(shù)組,然后按降序排序 PHP

比較并組合多維數(shù)組,然后按降序排序 PHP

PHP
慕桂英3389331 2023-08-19 10:28:17
我有 2 個(gè)多數(shù)組、配置文件和編碼數(shù)組,如下所示    $profiles = array(        array(            'user_id'      => 'fcc3d884-fbef-438a-9c86-0ad52c9b1223',            'first_name'   => 'Nar?ia',            'middle_name'  => '?',            'last_name'    => 'Cruz',            'ext'          => ''        ),        array(            'user_id'      => '0d31557d-1e9f-4db3-ac0d-72e1709fe89c',            'first_name'   => 'Randy',            'middle_name'  => 'O',            'last_name'    => 'Rocker',            'ext'          => ''        ),        array(            'user_id'      => '0f93f169-cf56-49df-a76b-7596446104c6',            'first_name'   => 'Qwerty',            'middle_name'  => 'K',            'last_name'    => 'Asdfg',            'ext'          => ''        ),        array(            'user_id'      => '23b1f4a2-034c-43b4-96b7-3191d78cead1',            'first_name'   => 'Johny',            'middle_name'  => 'L',            'last_name'    => 'Walker',            'ext'          => ''        )    );    $encoded = array(        array(            'encoder_id' => '0d31557d-1e9f-4db3-ac0d-72e1709fe89c',            'fullname'   => 'Randy O. Rocker',            'encoded'    => 10,        ),        array(            'encoder_id' => '23b1f4a2-034c-43b4-96b7-3191d78cead1',            'fullname'   => 'John L. Walker',            'encoded'    => 20,        )    );現(xiàn)在我想從 $profiles 獲取一些數(shù)據(jù),然后在user_id和編碼器_id匹配時(shí)合并到 $encoded 數(shù)組,我有這段代碼,但它似乎錯(cuò)誤,它只獲取“John L. Waler”數(shù)據(jù)。這是我的代碼。
查看完整描述

3 回答

?
www說(shuō)

TA貢獻(xiàn)1775條經(jīng)驗(yàn) 獲得超8個(gè)贊

您可以通過(guò)使用;按值重新索引$encoded數(shù)組來(lái)使您的生活更輕松。那么您不必每次都搜索數(shù)組來(lái)查找值,您可以直接使用.?提取數(shù)據(jù)后,您可以使用按值排序:encoder_idarray_columnuser_idissetusortencoded


$encoded_ids = array_column($encoded, null, 'encoder_id');


$data = array();

foreach ($profiles as $profile) {

? ? $user_id = $profile['user_id'];

? ? if (isset($encoded_ids[$user_id])) {

? ? ? ? $data[] = array('id' => $user_id,

? ? ? ? ? ? ? ? ? ? ? ? 'fullname' => $encoded_ids[$user_id]['fullname'],

? ? ? ? ? ? ? ? ? ? ? ? 'encoded' => $encoded_ids[$user_id]['encoded']

? ? ? ? ? ? ? ? ? ? ? ? );

? ? }

? ? else {

? ? ? ? $data[] = array('id' => $user_id,

? ? ? ? ? ? ? ? ? ? ? ? 'fullname' => "${profile['first_name']} ${profile['middle_name']} ${profile['last_name']}",

? ? ? ? ? ? ? ? ? ? ? ? 'encoded' => 0

? ? ? ? ? ? ? ? ? ? ? ? );

? ? }

}


usort($data, function ($a, $b) { return $b['encoded'] - $a['encoded'];});

print_r($data);

輸出:


Array

(

? ? [0] => Array

? ? ? ? (

? ? ? ? ? ? [id] => 23b1f4a2-034c-43b4-96b7-3191d78cead1

? ? ? ? ? ? [fullname] => John L. Walker

? ? ? ? ? ? [encoded] => 20

? ? ? ? )? ??

? ? [1] => Array

? ? ? ? (

? ? ? ? ? ? [id] => 0d31557d-1e9f-4db3-ac0d-72e1709fe89c

? ? ? ? ? ? [fullname] => Randy O. Rocker

? ? ? ? ? ? [encoded] => 10

? ? ? ? )? ??

? ? [2] => Array

? ? ? ? (

? ? ? ? ? ? [id] => fcc3d884-fbef-438a-9c86-0ad52c9b1223

? ? ? ? ? ? [fullname] => Nar?ia ? Cruz

? ? ? ? ? ? [encoded] => 0

? ? ? ? )? ??

? ? [3] => Array

? ? ? ? (

? ? ? ? ? ? [id] => 0f93f169-cf56-49df-a76b-7596446104c6

? ? ? ? ? ? [fullname] => Qwerty K Asdfg

? ? ? ? ? ? [encoded] => 0

? ? ? ? )? ??

)

3v4l.org 上的演示


查看完整回答
反對(duì) 回復(fù) 2023-08-19
?
叮當(dāng)貓咪

TA貢獻(xiàn)1776條經(jīng)驗(yàn) 獲得超12個(gè)贊

使用array_reduce

$encodedByEncoderId = array_column($encoded, null, 'encoder_id');


$combined = array_reduce($profiles, function (array $combined, array $profile) use ($encodedByEncoderId): array {

? $combined[] = [

? ? 'id' => $profile['user_id'],

? ? 'fullname' => $encodedByEncoderId[$profile['user_id']]['fullname']?

? ? ? ?? "{$profile['first_name']} {$profile['middle_name']}. {$profile['last_name']}",

? ? 'encoded' => $encodedByEncoderId[$profile['user_id']]['encoded']?

? ? ? ?? 0

? ];

? return $combined;

}, []);

演示: https:?//3v4l.org/kKBru



查看完整回答
反對(duì) 回復(fù) 2023-08-19
?
慕萊塢森

TA貢獻(xiàn)1810條經(jīng)驗(yàn) 獲得超4個(gè)贊

嘗試這個(gè)!


$data = [];

foreach ($profiles as $key => $val) {

    $user_id = $val['user_id'];

    $is_matched = 0;

    $encoded_data = [];


    foreach($encoded as $k => $v){

        if ($user_id == $v['encoder_id']) {

            $is_matched = 1;

            $encoded_data = $v;

        }

    }

    $ext_name = ($val['ext'] == '') ? '' : $val['ext'];

    $fullname = $val['first_name'].' '.substr($val['middle_name'], 0, 1).'. '.$val['last_name'].' '.$ext_name;

    $data[$key] = array(

        'id'       => ($is_matched == 1) ? $encoded_data['encoder_id'] : $user_id,

        'fullname' => ($is_matched == 1) ? $encoded_data['fullname'] : $fullname,

        'encoded'  => ($is_matched == 1) ? $encoded_data['encoded'] : 0

    );

}


查看完整回答
反對(duì) 回復(fù) 2023-08-19
  • 3 回答
  • 0 關(guān)注
  • 151 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)