Heim > Backend-Entwicklung > PHP-Tutorial > 如何简便地获取数组的第一个,最后一个元素的键值对?

如何简便地获取数组的第一个,最后一个元素的键值对?

不言
Freigeben: 2023-02-28 12:36:01
Original
3188 Leute haben es durchsucht

当前的做法:

# 关联数组
$a = ['a' => 1, ... 'b' => 2];

$first = reset($a);
$first_key = key($a);

$last = end($a);
$last_key = key($b);
Nach dem Login kopieren
Nach dem Login kopieren

有木有简便点的方法呢?

回复内容:

当前的做法:

# 关联数组
$a = ['a' => 1, ... 'b' => 2];

$first = reset($a);
$first_key = key($a);

$last = end($a);
$last_key = key($b);
Nach dem Login kopieren
Nach dem Login kopieren

有木有简便点的方法呢?

如果分别获取key和value,题主获取fisrt的方法还可以再简单点:

$first = reset($a);
Nach dem Login kopieren

如果要一下子把key和value都获取出来,可以用each:

list($first_key, $first) = (reset($a) ? each($a) : each($a));
list($last_key, $last) = (end($a) ? each($a) : each($a));
Nach dem Login kopieren

ps: 可惜PHP不支持逗号表达式,要不然可以直接这样写:

list($first_key, $first) = (reset($a) , each($a));
list($last_key, $last) = (end($a) , each($a));
Nach dem Login kopieren

补充:list可以嵌套,所以也可以这样写:

list(,list($first_key, $first)) = array(reset($a) , each($a));
list(,list($last_key, $last)) = array(end($a) , each($a));
Nach dem Login kopieren

phpprint_r(current(array_keys($a)));//a
print_r(current(array_values($a)));//1
print_r(end(array_keys($a)));//b
print_r(end(array_values($a)));//2
Nach dem Login kopieren

Verwandte Etiketten:
php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Aktuelle Ausgaben
PHP-Datenerfassung?
Aus 1970-01-01 08:00:00
0
0
0
PHP-Erweiterung intl
Aus 1970-01-01 08:00:00
0
0
0
Wie man PHP gut lernt
Aus 1970-01-01 08:00:00
0
0
0
Mehrere PHP-Versionen
Aus 1970-01-01 08:00:00
0
0
0
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage