【问题标题】:How can I replace a specific key's value in an array in php?如何在 php 的数组中替换特定键的值?
【发布时间】:2012-01-02 04:42:44
【问题描述】:

我有一个包含 3 个值的数组。在用户按下提交按钮后,我希望它用另一个值替换我指定的键的值。

如果我有一个值为(0 => A, 1 => B, 2 => C) 的数组,并且该函数已运行,则结果数组应为(0 => A, 1 => X, 2 => C),例如,如果函数的参数告诉它将数组中的第二个点替换为一个新的值。

如何在php的数组中替换特定键的值?

【问题讨论】:

    标签: php arrays replace


    【解决方案1】:

    如果你知道密钥,你可以这样做:

    $array[$key] = $newVal;
    

    如果你不这样做,你可以这样做:

    $pos = array_search($valToReplace, $array);
    if ($pos !== FALSE)
    {
       $array[$pos] = $newVal;
    }
    

    请注意,如果在 $array 中多次找到 $valToReplace,则返回第一个匹配的键。更多关于array_search

    【讨论】:

      【解决方案2】:

      如果您想要内联解决方案,您可以使用 array_replacearray_replay_recrusive,具体取决于哪个最适合您。

      $replaced_arr = array_replace([
              'key' => 'old_value',
              0 => 'another_untouched_value'
          ],[
              'key' => 'new_value'
          ]);
      

      最好是你的数组是键/值对

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-02-26
        • 2022-01-11
        • 2017-04-28
        • 1970-01-01
        • 1970-01-01
        • 2012-08-22
        • 1970-01-01
        • 2023-02-20
        相关资源
        最近更新 更多