首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有没有用字符串值填充数组的php函数?

有没有用字符串值填充数组的php函数?
EN

Stack Overflow用户
提问于 2012-08-14 23:52:19
回答 4查看 1.3K关注 0票数 3

我的代码:

代码语言:javascript
复制
$a = array_fill(5, 6, 'banana');

打印

代码语言:javascript
复制
Array
(
    [5]  => banana
    [6]  => banana
    [7]  => banana
    [8]  => banana
    [9]  => banana
    [10] => banana
)

但是我想要像下面这样的东西

代码语言:javascript
复制
Array
(
    [5]  => banana 1
    [6]  => banana 2
    [7]  => banana 3
    [8]  => banana 4
    [9]  => banana 5
    [10] => banana 6
)

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

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-08-15 00:07:54

代码语言:javascript
复制
function test_print_value($item2, $key, $some_value)
{
    echo $some_value." $item2<br />\n";
}

array_walk(range(0,10), 'test_print_value', 'Banana Apple ');

输出:

代码语言:javascript
复制
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
票数 2
EN

Stack Overflow用户

发布于 2012-08-14 23:56:35

不是开箱即用的,但你可以很容易地自己编写:

代码语言:javascript
复制
<?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;
}
票数 2
EN

Stack Overflow用户

发布于 2012-08-14 23:58:37

也许你可以使用array_walk函数?

代码语言:javascript
复制
$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作为引用传递(带有&字符)。否则,您将不会修改数组。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11956173

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档