我想使用函数向数组添加新元素。 这是我的代码:
$test = [];
$test[] = getTest('test_key');
function getTest($key){
return [$key => 'test_value'];
}
这是结果。多维数组。
Array
(
[0] => Array
(
[test_key] => test_value
)
)
但是对我来说,这将是一个深层次的发展:) 这是理想的结果:
Array
(
[test_key] => test_value
)
我做错了什么? :)
答案 0 :(得分:2)
您正在返回一个数组,然后将其推到您拥有的$ test数组中,这就是为什么它成为多维数组的原因。您可以考虑更改函数名称,但可以这样做:
$test = [];
getTest($test, 'test_key');
function getTest(&$array,$key){
$array[$key] = 'test_value';
}
答案 1 :(得分:0)
您可以将数组与URL url = null;
HttpURLConnection urlConnection = null;
try {
url = new URL("http://www.websiteurl.co.uk/app/" + databaseName + "/data.csv");
} catch (MalformedURLException error) {}
try {
urlConnection = (HttpURLConnection) url.openConnection();
InputStream is = new BufferedInputStream(urlConnection.getInputStream());
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
try {
if (reader.readLine() != null) {
setupAvailable = true;
} else {
setupAvailable = false;
}
}
finally {
try {
is.close();
}
catch (IOException e) {
// handle exception
}
}
} catch (IOException error) {}
finally {
urlConnection.disconnect();
}
合并。这里将您的结果与原始数组合并。
array_merge
输出:
<?php
function getTest($key){
return [$key => 'stool'];
}
$test = ['foo'=>'food'];
$test = array_merge($test, getTest('bar'));
print_r($test);