插入数组PHP后获取密钥

时间:2014-05-30 21:08:25

标签: php arrays

我正在寻找类似的东西:

$a = array();

$var1 = 'var1';
$var2 = 'var2';

$i = array_push($a, $var1);
$j = array_push($a, $var2);

echo $i;
echo $j;

预期输出为:

0
1

我想知道我刚刚插入的对象的索引,以便能够在之后快速找到它。我认为array_push给出了结果数组的大小,而不是最近插入的元素的索引

2 个答案:

答案 0 :(得分:1)

array_push return数组中新元素的数量,因此将返回值减1(

试试这个:

$a = array();

$var1 = 'var1';
$var2 = 'var2';

$i = array_push($a, $var1) - 1;
$j = array_push($a, $var2) - 1;

echo $i;
echo $j;

答案 1 :(得分:0)

function my_push_array(&$array, $value){
  $array[] = $value;
  end($array);
  return key($array);
}

$a = ['h','e','l','l'];
echo my_push_array($a, 'o'); //returns 4