Php 如何更改关联数组元素的值

Php 如何更改关联数组元素的值,php,arrays,Php,Arrays,我知道这可以通过以下方式实现: $arr['someughtstringas key']='prefix'$arr['一些丑陋的字符串作为键'] 但是有没有更短的方法来选择第一个元素呢?因为在我的例子中,键字符串很长 我只需要在第一个值前面加上一些文本,然后在最后一个值后面加上一些文本。这样做,首先重置数组,使内部指针位于开头,然后获取当前指针所在的键,然后为该键指定一个新值 $arr = array( 'some ugly string as key' => 'value',

我知道这可以通过以下方式实现:

$arr['someughtstringas key']='prefix'$arr['一些丑陋的字符串作为键']

但是有没有更短的方法来选择第一个元素呢?因为在我的例子中,键字符串很长


我只需要在第一个值前面加上一些文本,然后在最后一个值后面加上一些文本。这样做,首先重置数组,使内部指针位于开头,然后获取当前指针所在的键,然后为该键指定一个新值

$arr = array(
  'some ugly string as key'  => 'value',
  'some ugly string as key2' => 'value2',

);

输出新值此操作有效,首先重置数组,使内部指针位于开头,然后获取当前指针所在的键,然后为该键指定新值

$arr = array(
  'some ugly string as key'  => 'value',
  'some ugly string as key2' => 'value2',

);

输出新值

这里,数组函数的组合将对您有所帮助

array\u shift-将元素从数组的开头移出 array_unshift-将一个或多个元素前置到数组的开头 array_pop-将元素从数组末尾弹出 array_push-将一个或多个元素推到数组的末尾 输出-

参考-


数组函数的组合将在这里帮助您

array\u shift-将元素从数组的开头移出 array_unshift-将一个或多个元素前置到数组的开头 array_pop-将元素从数组末尾弹出 array_push-将一个或多个元素推到数组的末尾 输出-

参考-

我将使用数组获取键本身,然后使用[0]和[length-1]从该数组中拾取第一个和最后一个元素

Array
(
    [0] => stackoverflow
    [1] => superuser
    [2] => serverfault
)
我将使用数组获取键本身,然后使用[0]和[length-1]从该数组中拾取第一个和最后一个元素

Array
(
    [0] => stackoverflow
    [1] => superuser
    [2] => serverfault
)

这个方法甚至不要求你知道数组的键-它允许你操作第一个和最后一个,不管它们是什么。这个方法甚至不要求你知道数组的键-它允许你操作第一个和最后一个,我觉得这是实现OP要求的最干净、最通用的方法。但是,所需的行为是在第一个元素前面加上最后一个。。。我觉得这是实现OP要求的最干净、最通用的方法。但是,所需的行为是在第一个元素前面加上最后一个。。。只是说:
$arr = array(
  'some ugly string as key'  => 'value',
  'some ugly string as key2' => 'value2',
);

$keys = array_keys($arr);

$firstKey = $keys[0];
$lastKey = $keys[sizeof($arr) - 1];

$arr[$firstKey] = "foo " . $arr[$firstKey]; 
$arr[$lastKey] =  $arr[$lastKey] . "bar ";