1. Hàm array_shift() trong PHP

Hàm array_shift() trong PHP giúp ta loại bỏ phần tử trong một mảng. Phần tử bị loại bỏ sẽ là phần tử đầu tiên của mảng đó và trả về phần tử đã bị loại bỏ. Sau khi sử dụng hàm array_shift() để rút ngắn mảng đi một phần tử, các key dạng số của mảng sẽ có một chút thay đổi. Các key dạng số còn lại sẽ được đánh số lại từ đầu theo thứ tự tăng dần và bắt đầu từ 0. Với các key dạng chuỗi thì vẫn sẽ dữ nguyên và không có gì thay đổi. Hàm array_shift() được giới thiệu và sử dụng từ phiên bản PHP 4.0

2. Cú pháp hàm array_shift() trong PHP

Ta có cú pháp của hàm array_shift() trong PHP là :

array_shift($array)

Ta có cú pháp của hàm array_shift() khá đơn giản. Hàm chỉ nhận một tham số bắt buộc phải truyền vào là $array chính là mảng đầu vào mà ta muốn rút ngắn phần tử. Như mình đã nói thì kết quả trả về sẽ là mảng đã được loại bỏ phần tử đầu tiên. Ở đây value sẽ được trả về. Nếu như ta truyền vào một mảng rỗng thì Null sẽ được trả về.

Ví dụ : xóa phần tử đầu tiên của mảng và trả về giá trị đó

<?php
$a=array("a"=>"PHP","b"=>"Python","c"=>"Java");
echo array_shift($a)."<br>";
print_r ($a);
?>

Kết quả

PHP
Array ( [b] => Python [c] => Java )

Khi ta truyền mảng $a vào hàm array_shift() thì tự động phần tử đầu tiên của mảng $a sẽ bị loại bỏ. Và mình đã cho hiển thị cả giá trị bị cắt bỏ và mảng sau khi đã cắt giống như kết quả trên.

3. Ví dụ về hàm array_shift() trong PHP

Ví dụ 1: xóa phần tử đầu tiên của mảng với mảng có key dạng số

<?php
$a1=array(0=>"PHP",1=>"Java",2=>"Python");
echo array_shift($a1)."<br>";
print_r ($a1);
?>

Kết quả

PHP
Array ( [0] => Java [1] => Python )

Trong mảng $a1 này có những key dạng số. Như mình đã nói thì những key này sẽ được đặt lại theo thứ tự tăng dần bắt đầu từ 0 sau khi cắt giá trị đầu tiên bằng hàm array_shift() . Kết quả về giá trị bị loại bỏ và mảng mới sẽ giống như trên.

Ví dụ 2:

<?php

function Shifting($array)
{
    print_r(array_shift($array));
    echo "<pre>";
    print_r($array);
}
$array = array(45, 5, 1, 22, 22, 10, 10);
Shifting($array);
?>

Kết quả

45
Array
(
    [0] => 5
    [1] => 1
    [2] => 22
    [3] => 22
    [4] => 10
    [5] => 10
)

Ví dụ 3:

<?php
function Shifting($array)
{
    print_r(array_shift($array));
    echo "<pre>";
    print_r($array);
}
$array = array("PHP"=>2, "Java"=>4, "Python"=>5, "HTML"=>100);
Shifting($array);
?>

Kết quả

2
Array
(
    [Java] => 4
    [Python] => 5
    [HTML] => 100
)