我正在尝试创建一个函数,将执行以下操作:
有一个以以下形式构建的数组

$array = [
    0 => 1,
    1 => 2,
    2 => 4,
];

我想创建一个长度为 5 的字符串,其中当前数组的值按正确的顺序排列,例如:12040。

或者
$array = [
    0 => 3,
    1 => 5,
];

将变成:00305

本质上,用字符串中的 0 替换数组中不存在的位置。

谢谢你!

最佳答案

我不是 100% 确定我理解你的意思,但我认为你正在寻找这个:

$finalString = "";
for ($i = 0, $j = count($myArray); $i < $j; $i++)
{
    if (isset($myArray[$i]))
    {
        $finalString .= $myArray[$i];
    }
    else
    {
        $finalString .= "0";
    }
}

编辑: 我意识到你可能正在寻找这个:
$myArray = [3, 5];
$finalString = "";
for ($i = 1; $i <= 5; $i++)
{
    if (in_array($i, $myArray))
    {
        $finalString .= $i;
    }
    else
    {
        $finalString .= "0";
    }
}

在此 $finalString 之后包含 00305 。如果您想继续这不仅仅是 5 个空格,只需更改循环中的 5。

关于php - 根据数组的索引创建一个字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34023485/

10-12 18:04