如何转换PHP数组以在JavaScript脚本中使用

时间:2015-07-07 10:14:11

标签: javascript php arrays

嗨,我有一个类似的数组

Array ( [0] => Array ( [t_name] => London, Heathrow ) 
        [1] => Array ( [t_name]   => Lilongwe, Malawi ) 
        [2] => Array ( [t_name] => Harare,Zimbabwe ) 
        [3] => Array ( [t_name] => Lahore,Pakistan ) 
        [4] => Array ( [t_name] => Accra, Ghana ) 
        [5] => Array ( [t_name] => Entebbe, Uganda ) 
        [6] => Array ( [t_name] => Nairobi ) 
        [7] => Array ( [t_name] => Abuja, Nigeria )
)

我想将它转换为在JavaScript中使用。 它应该看起来像那样 我试过了json_encode(),但它转换了类似的东西

[{"t_name":"London, Heathrow"},{"t_name":"Lilongwe, Malawi"},
{"t_name":"Harare,Zimbabwe"},{"t_name":"Lahore,Pakistan"},{"t_name":"Accra, Ghana"},
{"t_name":"Entebbe, Uganda"},{"t_name":"Nairobi"},{"t_name":"Abuja, Nigeria"}]

但我想让它像那样转换

[
 "London, Heathrow",
 "Lilongwe, Malawi",
 "Harare,Zimbabwe",
 "Lahore,Pakistan",
 "Accra, Ghana",
 "Entebbe, Uganda",
 "Nairobi",
 "Abuja, Nigeria",
 "Lagos, Nigeria"
 ]

2 个答案:

答案 0 :(得分:4)

在您的数组json_encode之前,您需要先使用t_name获取array_column的单个列的值并回显结果数组。试试吧

$arr = Array (Array ( 't_name' => 'London, Heathrow' ),Array ( 't_name'   => 'Lilongwe, Malawi' ),Array ( 't_name' => 'Harare,Zimbabwe' ),Array (   't_name' => 'Lahore,Pakistan' ),Array ( 't_name' => 'Accra, Ghana' ),Array ( 't_name' => 'Entebbe, Uganda' ),Array ( 't_name' => 'Nairobi' ),Array ( 't_name' => 'Abuja, Nigeria' ));
echo json_encode(array_column($arr,'t_name'));

Fiddle

答案 1 :(得分:0)

使用循环将名称提取到一个简单的数组中:

$new_array = array();
foreach ($array as $obj) {
    $new_array[] = str_replace(' ', '', $obj['t_name']);
}
echo json_encode($new_array);