Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Dapatkan elemen pertama dan terakhir tatasusunan PHP

Dapatkan elemen pertama dan terakhir tatasusunan PHP

PHPz
PHPzasal
2023-09-04 19:05:051088semak imbas

Dapatkan elemen pertama dan terakhir tatasusunan PHP

Apabila menulis kod adalah perkara biasa yang anda perlu berurusan dengan koleksi objek. Ia boleh menjadi satu set nama pelanggan atau bilangan siaran yang dibuat oleh pengguna yang berbeza. Menyimpan data ini dalam tatasusunan membantu kami memproses keseluruhan koleksi dengan mengulanginya satu demi satu.

PHP datang dengan dua jenis tatasusunan yang berbeza untuk membantu anda menyimpan data. Anda boleh menggunakan tatasusunan angka mudah atau mencipta tatasusunan bersekutu. Tatasusunan berangka berguna apabila anda hanya mahu menyimpan senarai item, seperti senarai pelanggan. Tatasusunan bersekutu berguna apabila anda ingin menyimpan pasangan nilai kunci, seperti senarai ID pelanggan dan jumlah nilai produk yang dibeli oleh setiap orang.

Dari semasa ke semasa, anda perlu mengakses terus elemen dalam tatasusunan yang anda buat. Dalam petua cepat ini, saya akan menunjukkan kepada anda cara mendapatkan elemen pertama atau terakhir tatasusunan dalam PHP.

Dapatkan elemen pertama tatasusunan dalam PHP

Mendapatkan elemen pertama tatasusunan angka mudah adalah mudah. Hanya dapatkan elemen dengan indeks 0!

<?php

$names = ["Adam", "Monty", "Sajal", "Andrew"];

// Output — Adam
echo $names[0];

?>

Walau bagaimanapun, ini tidak berfungsi dengan tatasusunan bersekutu.

Salah satu cara paling berkesan untuk mendapatkan elemen pertama tatasusunan angka atau bersekutu dalam PHP ialah menggunakan fungsi reset(). Fungsi ini menetapkan penunjuk dalaman tatasusunan kepada elemen pertamanya dan mengembalikan nilai elemen pertama. Berikut adalah beberapa contoh: reset() 函数。该函数将数组的内部指针设置为其第一个元素并返回第一个元素的值。以下是一些示例:

<?php

$names = ['Andrew', 'Adam', 'Monty', 'James', 'Amanda', 'Jessica', 'Roy'];

$country_capitals = ['Canada' => 'Ottawa', 'Germany' => 'Berlin', 'United States' => 'Washington D.C.', 'China' => 'Beijing', 'India' => 'New Delhi', 'Australia' => 'Canberra'];

// Output — Andrew
echo reset($names);

// Output — Ottawa
echo reset($country_capitals);

?>

如您所见,我们不需要知道第一个元素的键即可获取其值。我们所要做的就是将数组传递给 reset()

正如我之前提到的,使用 reset() 将更改数组的内部指针。如果您想获取数组中的第一个元素而不对其进行任何更改,可以使用 array_key_first() 函数。这将为您提供数组的第一个键,可用于获取第一个元素的值。

<?php

$names = ['Andrew', 'Adam', 'Monty', 'James', 'Amanda', 'Jessica', 'Roy'];

$country_capitals = ['Canada' => 'Ottawa', 'Germany' => 'Berlin', 'United States' => 'Washington D.C.', 'China' => 'Beijing', 'India' => 'New Delhi', 'Australia' => 'Canberra'];

// Output — Andrew
echo $names[array_key_first($names)];

// Output — Ottawa
echo $country_capitals[array_key_first($country_capitals)];

?>

您应该记住的一件事是 array_key_first() 仅从 PHP 7.3 开始可用。

在 PHP 中获取数组的最后一个元素

对于简单的数值数组,您可以通过根据数组长度计算最后一个元素的索引来获取最后一个元素。

<?php

$names = ["Adam", "Monty", "Sajal", "Andrew"];

// Output — Andrew
echo $names[count($names)-1];

?>

但是,这再次不适用于关联数组。

您可以使用 PHP 中的 end() 函数来获取任何 PHP 数组的最后一个元素。它将内部指针设置为数组的最后一个元素并返回其值。这使得它类似于我们在上一节中讨论的 reset() 函数。

<?php

$names = ['Andrew', 'Adam', 'Monty', 'James', 'Amanda', 'Jessica', 'Roy'];

$country_capitals = ['Canada' => 'Ottawa', 'Germany' => 'Berlin', 'United States' => 'Washington D.C.', 'China' => 'Beijing', 'India' => 'New Delhi', 'Australia' => 'Canberra'];

// Output — Roy
echo end($names);

// Output — Canberra
echo end($country_capitals);

?>

就像 array_key_first() 一样,也有一个相应的 array_key_last() 函数,它可以为您提供数组的最后一个键,而无需以任何方式修改它。获得密钥后,您可以轻松访问数组的最后一个元素。

<?php

$names = ['Andrew', 'Adam', 'Monty', 'James', 'Amanda', 'Jessica', 'Roy'];

$country_capitals = ['Canada' => 'Ottawa', 'Germany' => 'Berlin', 'United States' => 'Washington D.C.', 'China' => 'Beijing', 'India' => 'New Delhi', 'Australia' => 'Canberra'];

// Output — Roy
echo $names[array_key_last($names)];

// Output — Canberra
echo $country_capitals[array_key_last($country_capitals)];

?>

从 PHP 7.3 开始,array_key_last() 函数也可用。

最终想法

还有很多方法可以获取 PHP 中元素的第一个或最后一个数组。例如,您可以使用 array_values() 然后获取第一个或最后一个元素。但是,如果您不需要数组中的任何额外信息,则使用 reset()array_key_first()end()array_key_last() rrreee

Seperti yang anda lihat, kita tidak perlu mengetahui kunci elemen pertama untuk mendapatkan nilainya. Apa yang perlu kita lakukan ialah menghantar tatasusunan kepada reset(). #🎜🎜# #🎜🎜#Seperti yang saya nyatakan sebelum ini, menggunakan reset() akan menukar penunjuk dalaman tatasusunan. Jika anda ingin mendapatkan elemen pertama dalam tatasusunan tanpa mengubahnya, anda boleh menggunakan fungsi array_key_first(). Ini akan memberi anda kunci pertama tatasusunan, yang boleh digunakan untuk mendapatkan nilai elemen pertama. #🎜🎜# rrreee #🎜🎜#Satu perkara yang anda harus ingat ialah array_key_first() hanya tersedia bermula dengan PHP 7.3. #🎜🎜# #🎜🎜#Dapatkan elemen terakhir tatasusunan dalam PHP#🎜🎜# #🎜🎜#Untuk tatasusunan angka ringkas, anda boleh mendapatkan elemen terakhir dengan mengira indeksnya berdasarkan panjang tatasusunan. #🎜🎜# rrreee #🎜🎜#Tetapi sekali lagi, ini tidak berfungsi dengan tatasusunan bersekutu. #🎜🎜# #🎜🎜#Anda boleh menggunakan fungsi end() dalam PHP untuk mendapatkan elemen terakhir mana-mana tatasusunan PHP. Ia menetapkan penunjuk dalaman kepada elemen terakhir tatasusunan dan mengembalikan nilainya. Ini menjadikannya serupa dengan fungsi reset() yang kami bincangkan dalam bahagian sebelumnya. #🎜🎜# rrreee #🎜🎜#Sama seperti array_key_first(), terdapat fungsi array_key_last() yang sepadan yang memberikan anda kunci terakhir tatasusunan tanpa perlu melakukannya dalam apa jua cara Ubah suai ia. Sebaik sahaja anda mempunyai kunci, anda boleh mengakses elemen terakhir tatasusunan dengan mudah. #🎜🎜# rrreee #🎜🎜# Bermula dari PHP 7.3, fungsi array_key_last() juga tersedia. #🎜🎜# #🎜🎜#Fikiran Akhir#🎜🎜# #🎜🎜#Terdapat juga banyak cara untuk mendapatkan tatasusunan elemen pertama atau terakhir dalam PHP. Sebagai contoh, anda boleh menggunakan array_values() dan dapatkan elemen pertama atau terakhir. Walau bagaimanapun, jika anda tidak memerlukan sebarang maklumat tambahan dalam tatasusunan, gunakan reset(), array_key_first(), end() dan array_key_last() akan menjadi lebih cekap. #🎜🎜#

Atas ialah kandungan terperinci Dapatkan elemen pertama dan terakhir tatasusunan PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn