Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/242.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否有php函数用字符串值填充数组?_Php_Arrays - Fatal编程技术网

是否有php函数用字符串值填充数组?

是否有php函数用字符串值填充数组?,php,arrays,Php,Arrays,我的代码: $a = array_fill(5, 6, 'banana'); 印刷品 Array ( [5] => banana [6] => banana [7] => banana [8] => banana [9] => banana [10] => banana ) 但我想要下面这样的东西 Array ( [5] => banana 1 [6] => bana

我的代码:

$a = array_fill(5, 6, 'banana');
印刷品

Array
(
    [5]  => banana
    [6]  => banana
    [7]  => banana
    [8]  => banana
    [9]  => banana
    [10] => banana
)
但我想要下面这样的东西

Array
(
    [5]  => banana 1
    [6]  => banana 2
    [7]  => banana 3
    [8]  => banana 4
    [9]  => banana 5
    [10] => banana 6
)

上面还有其他php函数可以实现吗?如果是,请告诉我。

不是开箱即用,但您可以自己轻松地写:

<?php
function custom_array_fill($start_index, $num, $value) {
    $result = array();
    for($i = 1; $i < $num + 1; $i++) {
        $result[$start_index + $i - 1] = $value . " " . $i;
    }
    return $result;
}
函数myFillArray($index,$size,$value){
$array=array();
对于($i=0;$i<$size;$i++){
$array[$index+$i]=$value.“$i;
}
返回$array;
}

也许您可以使用数组\u walk功能

$a = array_fill(5, 6, 'banana');
array_walk($a, function(&$item, $key) {
    $item = sprintf('%s %d', $item, ($key-4));//subtract 4 from key to get 'banana 1'
});

只是别忘了将$item作为引用传递(带有&character)。否则,您将无法修改数组。

为什么不自己做呢?实际上,使用foreach循环非常简单,而且非常简单:我知道如何使用for/foreach/while循环生成上面的内容,但我认为可能有一些东西可以增加数字和字符串值,所以问题是。@user1421214不,没有。KalpeshMehta的评论应该是正确的答案。顺便说一句,你不能搜索php手册吗?我认为写代码比问这个问题花费的时间要少question@shiplu.mokadd.im这一评论是在我发布我的答案后添加的。我不是通灵者。道歉。但我认为你可以编辑你的答案来反映信息
function test_print_value($item2, $key, $some_value)
{
    echo $some_value." $item2<br />\n";
}

array_walk(range(0,10), 'test_print_value', 'Banana Apple ');
function test_print_value($item2, $key, $some_value)
{
    echo $some_value." $item2<br />\n";
}

array_walk(range(0,10), 'test_print_value', 'Banana Apple ');
Banana Apple 0
Banana Apple 1
Banana Apple 2
Banana Apple 3
Banana Apple 4
Banana Apple 5
Banana Apple 6
Banana Apple 7
Banana Apple 8
Banana Apple 9
Banana Apple 10