【问题标题】:How to add specific key to array values? [closed]如何将特定键添加到数组值? [关闭]
【发布时间】:2021-12-29 15:07:39
【问题描述】:

我存储了指向 $fotolar 变量的链接,并使用爆炸转换为数组。

我的代码:

$ex = explode('<br>', $fotolar);

echo "<pre>";
print_r($ex);
echo "</pre>";

输出:

Array
(
    [0] => 
    https://www.mersevkids.com/uploads/images/202112/img_1920x_61b1f9e4ed8c48-88505152-13660630.jpeg
    [1] => 
    https://www.mersevkids.com/uploads/images/202112/img_1920x_61b16a438951a1-13859326-45341947.jpg
    [2] => 
    https://www.mersevkids.com/uploads/images/202112/img_1920x_61b16a3f2df271-08655153-10027442.jpg
)

如何向这个数组添加“url”键?

例如:

    Array
    (
        [0] => Array
(
           [url] =>
        https://www.mersevkids.com/uploads/images/202112/img_1920x_61b1f9e4ed8c48-88505152-13660630.jpeg
)
        [1] => Array
(
           [url] =>
        https://www.mersevkids.com/uploads/images/202112/img_1920x_61b16a438951a1-13859326-45341947.jpg
)
        [2] => Array
(
           [url] =>
        https://www.mersevkids.com/uploads/images/202112/img_1920x_61b16a3f2df271-08655153-10027442.jpg
)
    )

【问题讨论】:

  • 您可以在标记时使用foreach。你有没有尝试过什么?如果是这样,请添加问题,这将帮助我们,帮助你。
  • 创建一个新的空数组,循环这个数组,并在其中将每个带有键的值推送到新数组...
  • 这能回答你的问题吗? How to add keys to php array? 还有 google:向 php 数组添加密钥,这是重复的
  • @ikiK 甚至不需要新数组。
  • @user3783243 我同意,首先想到的是,但在不到一分钟的时间内找到了其他解决方案...暂时没有使用 PHP。

标签: php arrays foreach explode


【解决方案1】:

将字符串分解为数组后,您可以循环该数组以创建一个新数组,如下所示:

<?php

$str = <<<STR
https://www.mersevkids.com/uploads/images/202112/img_1920x_61b1f9e4ed8c48-88505152-13660630.jpeg<br>
https://www.mersevkids.com/uploads/images/202112/img_1920x_61b16a438951a1-13859326-45341947.jpg<br>
https://www.mersevkids.com/uploads/images/202112/img_1920x_61b16a3f2df271-08655153-10027442.jpg
STR;

$arr = explode('<br>', $str);
$result = [];

foreach ($arr as $v) {
    $result[]['url'] =  $v;
}

var_dump($result);

【讨论】:

  • (也可以写成$result[]['url'] = $v;,它将与人们不再使用的版本兼容)
  • 完全同意你的看法:)
  • 非常感谢。这工作正常! @桑露
【解决方案2】:

这是一个使用array_map的单行代码

$str = <<<STR
https://www.mersevkids.com/uploads/images/202112/img_1920x_61b1f9e4ed8c48-88505152-13660630.jpeg<br>
https://www.mersevkids.com/uploads/images/202112/img_1920x_61b16a438951a1-13859326-45341947.jpg<br>
https://www.mersevkids.com/uploads/images/202112/img_1920x_61b16a3f2df271-08655153-10027442.jpg
STR;

$array = array_map(function($i){return['url'=>$i];},explode('<br>',$str));

Sandbox

【讨论】:

  • 感谢您的帮助!问候。 @ArtisticPhoenix
猜你喜欢
  • 1970-01-01
  • 2018-03-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-02-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多