php - Mengenai menukar nilai yang ditentukan bagi setiap tatasusunan kecil dalam tatasusunan dua digit tanpa menggunakan gelung
ringa_lee
ringa_lee 2017-05-27 17:43:55
0
6
865

Katakan saya mempunyai tatasusunan 2D:

$a = [
    '0' => [
        'a' => '11',
        'b' => '22',
        'c' => '33'
    ],
    '1' => [
        'a' => '44',
        'b' => '55',
        'c' => '66'
    ],
    ...
];

Untuk tatasusunan sedemikian, saya ingin menukar semua nilai 'b' kepada '99' tanpa menggunakan gelung Bagaimana saya boleh mencapai ini?

Saya memikirkannya untuk masa yang lama, tetapi saya tidak tahu.

ringa_lee
ringa_lee

ringa_lee

membalas semua(6)
PHPzhong

Tidak, dan ia tidak masuk akal.
Walau apa pun, anda perlu menyamar untuk mencapai traversal.

phpcn_u1582
$a=array_map($a,function($val){
    $val['b']=99;
    return $val;
})
淡淡烟草味

Tukar kepada cara lain, walaupun anda tidak memerlukan gelung, maka kaedah itu juga mesti menggunakan gelung

SoTukar sup tanpa tukar ubat

PHPzhong

Tempahan di tingkat atas adalah berantakan Ia sepatutnya array_map(function,$arr);
Malah, apa yang anda katakan di tingkat atas adalah betul menyelesaikan masalah anda?

$a=array_map(function($val){
    $val['b']='99';
    return $val;
},$a);
伊谢尔伦

Kebosanan, tidak memahami gambaran besar, terpaku pada hal-hal kecil. Jadi saya pun bosan, haha

    $arr = [
        '0' => [
            'a' => '11',
            'b' => '22',
            'c' => '33'
        ],
        '1' => [
            'a' => '44',
            'b' => '55',
            'c' => '66'
        ]
    ];
    
    $arr   = json_encode($arr);
    
    $match = preg_replace('/"b":"(.+?)"/', '"b":"99"', $arr);
    
    var_dump(json_decode($match, true));
Peter_Zhu

Tukar kepada rentetan + padanan biasa dan gantikan?

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan