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,我存储了一个变量,并将其分解成一个数组,然后放入会话中 $totalSlip = explode(',',$_SESSION['isSlip']); 这给了我一系列的 Array ( [0] => 25$$A [1] => 34$$D [2] => 32$$D ) 有3个可能的值,例如25$$A、25$$D和25$$H。我的挑战是,当数组中的某个键出现多次时,我需要一个新值来替换该键的值。e、 如果25$$A已经存在,我加上25$$D

我存储了一个变量,并将其分解成一个数组,然后放入会话中

$totalSlip = explode(',',$_SESSION['isSlip']);
这给了我一系列的

  Array ( 
    [0] => 25$$A 
    [1] => 34$$D 
    [2] => 32$$D 
  )
有3个可能的值,例如25$$A、25$$D和25$$H。我的挑战是,当数组中的某个键出现多次时,我需要一个新值来替换该键的值。e、 如果25$$A已经存在,我加上25$$D,它给我的是

Array ( 
    [0] => 25$$A 
    [1] => 34$$D 
    [2] => 32$$D 
    [3] => 25$$D
  )
但我想要的是这个

Array ( 
    [0] => 25$$D
    [1] => 34$$D 
    [2] => 32$$D
  )
我想替换数组[0]的值。
如果可能的话,您需要更改逻辑以便以这种方式使用阵列,我将非常感谢您的帮助。整数作为数组键,字符作为值。因此,您的阵列:

Array ( 
    [0] => 25$$A 
    [1] => 34$$D 
    [2] => 32$$D 
)
应该是这样的:

Array (
    [25] => A 
    [34] => D 
    [32] => D 
)
这样,您只需使用以下命令更新密钥即可更改逻辑:

$array[25] = "D";
如果数组键存在,则会产生以下结果:

Array (
    [25] => D 
    [34] => D 
    [32] => D 
)
或者,如果它不存在,它会创建一个!例如:

$array[65] = "A";

Array (
    [25] => A 
    [34] => D 
    [32] => D 
    [65] => A 
)

另外,为什么要使用字符串连接,然后在以后分解它?您可以将数组存储在PHP会话中。非常感谢您的帮助