Rumah > Soal Jawab > teks badan
Tatasusunan php adalah seperti berikut
array(6) {
[17]=>
array(1) {
[0]=>
string(1) "1"
}
[11]=>
array(1) {
[0]=>
string(1) "2"
}
[10]=>
array(1) {
[0]=>
string(1) "6"
}
[9]=>
array(1) {
[0]=>
string(1) "1"
}
}
Bagaimana susunan di atas menjadi seperti di bawah
[['17','1'],['11','2'],['10','6'],['9','1']]
谢谢大神
给我你的怀抱2017-06-12 09:24:11
<?php
$arrayOld = array(
'17' => array('1'),
'11' => array('2'),
'10' => array('6'),
'9' => array('1'),
);
$arrayNew = [];
foreach($arrayOld as $key => $value){
$arrayNew[] = [(string)$key,$value[0]];
}
var_export ($arrayNew);
習慣沉默2017-06-12 09:24:11
$old = array(
'17' => '1',
'11' => '2',
'10' => '6',
'9' => 1
);
$new = array_chunk($old, 1, true);
foreach ($new as $key => &$val) {
array_unshift($val, $key);
}
var_dump($new);
为情所困2017-06-12 09:24:11
<?php
$data= array(
'17' => array('1'),
'11' => array('2'),
'10' => array('6'),
'9' => array('1'),
);
function maps(&$array,$key) {
array_unshift($array, $key);
}
array_walk($data, 'maps');
print_r($data);
?>
我想大声告诉你2017-06-12 09:24:11
Jawapan yang diberikan oleh responden di tingkat atas semuanya agak baik, dan saya tidak dapat menahan diri untuk meluahkan keburukan saya
$old = [
'17' => ['1'],
'11' => ['2'],
'10' => ['6'],
'9' => ['1'],
];
$new = [];
foreach ($old as $key => $value) {
$new[] = [$key, $value[0]];
}
var_dump($new);
Ia sebenarnya agak mudah Jawapannya tidak jauh berbeza, jadi saya hanya akan menambah beberapa penjelasan
Pertama sekali, anda perlu belajar melintasi foreach, dan kemudian PHP ialah bahasa yang ditaip lemah, dan jenis pembolehubah ditukar dengan sendirinya
Oh ya, perkara lain yang anda perlu tahu ialah $arr[] = $var, iaitu seperti menambah elemen pada penghujung tatasusunan Kaedah lain ialah array_push($arr, $var), tetapi kaedah ini kurang cekap daripada yang pertama