cari

Rumah  >  Soal Jawab  >  teks badan

php - Mengenai menukar nilai yang ditentukan bagi setiap tatasusunan kecil dalam tatasusunan dua digit tanpa menggunakan gelung

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_leeringa_lee2740 hari yang lalu847

membalas semua(6)saya akan balas

  • PHPz

    PHPz2017-05-27 17:45:55

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

    balas
    0
  • phpcn_u1582

    phpcn_u15822017-05-27 17:45:55

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

    balas
    0
  • 淡淡烟草味

    淡淡烟草味2017-05-27 17:45:55

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

    SoTukar sup tanpa tukar ubat

    balas
    0
  • PHPz

    PHPz2017-05-27 17:45:55

    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);

    balas
    0
  • 伊谢尔伦

    伊谢尔伦2017-05-27 17:45:55

    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));

    balas
    0
  • 天蓬老师

    天蓬老师2017-05-27 17:45:55

    Tukar kepada rentetan + padanan biasa dan gantikan?

    balas
    0
  • Batalbalas