Как обратиться к последнему элементу массива php
Перейти к содержимому

Как обратиться к последнему элементу массива php

  • автор:

array_pop

array_pop() извлекает и возвращает значение последнего элемента массива array , уменьшая размер array на один элемент.

Замечание: Эта функция при вызове сбрасывает указатель массива, переданного параметром.

Список параметров

Массив, из которого берётся значение.

Возвращаемые значения

Возвращает значение последнего элемента массива array . Если array пуст, будет возвращён null .

Примеры

Пример #1 Пример использования array_pop()

После этого в $stack будет только 3 элемента:

и raspberry будет присвоено переменной $fruit .

Смотрите также

  • array_push() — Добавляет один или несколько элементов в конец массива
  • array_shift() — Извлекает первый элемент массива
  • array_unshift() — Добавляет один или несколько элементов в начало массива

User Contributed Notes 11 notes

Note that array_pop doesn’t issue ANY warning or error if the array is already empty when you try to pop something from it. This is bizarre! And it will cause cascades of errors that are hard to resolve without knowing the real cause.

Rather than an error, it silently returns a NULL object, it appears, so in my case I ended up with warnings elsewhere about accessing elements of arrays with invalid indexes, as I was expecting to have popped an array. This behaviour (and the lack of any warning, when many trivial things are complained about verbosely) is NOT noted in the manual above. Popping an already empty stack should definitely trigger some sort of notice, to help debugging.

Sure, it’s probably good practice to wrap the pop in an if (count($array)) but that should be suggested in the manual, if there’s no error returned for trying something that should fail and obviously isn’t expected to return a meaningful result.

I wrote a simple function to perform an intersect on multiple (unlimited) arrays.

Pass an array containing all the arrays you want to compare, along with what key to match by.

<?php
function multipleArrayIntersect ( $arrayOfArrays , $matchKey )
<
$compareArray = array_pop ( $arrayOfArrays );

foreach( $compareArray AS $key => $valueArray ) <
foreach( $arrayOfArrays AS $subArray => $contents ) <
if (! in_array ( $compareArray [ $key ][ $matchKey ], $contents )) <
unset( $compareArray [ $key ]);
>
>
>

In a previous example .
<?php
function array_trim ( $array , $index ) <
if ( is_array ( $array ) ) <
unset ( $array [ $index ] );
array_unshift ( $array , array_shift ( $array ) );
return $array ;
>
else <
return false ;
>
>
?>

This have a problem. if u unset the last value and then use
<?
array_unshift ( $array, array_shift ( $array ) );
?>

will return a : Array ( [0] => )
so u can fix it using.

<?php
if ( count ( $array ) > 0 ) array_unshift ( $values , array_shift ( $values ) );
?>

good luck 😉

alex.chacon@terra.com
Hi
Here there is a function that delete a elemente from a array and re calculate indexes

<?php
function eliminarElementoArreglo ( $array , $indice )
<
if ( array_key_exists ( $indice , $array ))
<
$temp = $array [ 0 ];
$array [ 0 ] = $array [ $indice ];
$array [ $indice ] = $temp ;
array_shift ( $array );

//reacomodamos ?ndices
for ( $i = 0 ; $i < $indice ; $i ++)
<
$dummy = $array [ $i ];
$array [ $i ] = $temp ;
$temp = $dummy ;
>
>
return $array ;
>
?>

I had a problem when using this function because my array was made up entirley of numbers, so I have made my own function. Hopefully it will be useful to somebody.

Получить последнее значение массива (PHP)

Например у нас есть массив, состоящий из цифровых и текстовых ключей:

Функция end()

В каждом массиве PHP есть внутренний указатель на «текущий» элемент. Функция end() устанавливает указатель массива на последний элемент и возвращает его значение.

Функция array_pop()

Функция array_pop() извлекает последнее значение массива и возвращает его.

Внимание! Значение возвращаемое функцией array_pop() пропадает из массива.

Третий способ

Третий способ не самый лучший, но, если вы уверены что все ключи массива цифровые или вам неважны ключи, то способ тоже подойдет.

array_pop

array_pop() извлекает и возвращает последнее значение параметра array , уменьшая размер array на один элемент.

Замечание: Эта функция при вызове сбрасывает указатель массива, переданного параметром.

Список параметров

Массив, из которого берется значение.

Возвращаемые значения

Возвращает последний элемент массива array . Если array пуст (или не является массивом), будет возвращен NULL .

Ошибки

При вызове этой функции с не массивом будет вызвана ошибка уровня E_WARNING.

Примеры

Пример #1 Пример использования array_pop()

Получить последний элемент массива в PHP

В этом посте мы обсудим, как получить последний элемент массива (не удаляя его) в PHP.

1. Использование end() функция

Вы можете вызвать end() функция для получения значения в конце массива. Он возвращает значение, присутствующее в конце массива, и false если массив пуст.

Обратите внимание, что end() функция перемещает внутренний указатель массива к его последнему элементу. Если вы не хотите изменять указатель внутреннего массива, передайте массив в качестве параметра функции и вызовите метод end() функция. Это работает, потому что массив передается как копия, а не как ссылка.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *