list

(PHP 4, PHP 5, PHP 7, PHP 8)

listDeğişkenlere bir dizi gibi atama yapar

Açıklama

list(mixed$değişken, mixed...$değişkenler = ?): array

array() gibi bu da bir işlev değil bir dil oluşumudur. list() işlevi tek deyimde birden fazla değişkene atama yapmak için kullanılır. Dizgeler patlatılamaz ve list() ifadeleri tamamen boş olamaz.

Bilginize:

PHP 7.1.0 öncesinde, list() işlevi sadece sayısal dizilerde çalışır ve indislerin sıfırdan başladığı varsayılırdı.

Bağımsız Değişkenler

değişken

Değişken.

değişkenler

Diğer değişkenler.

Dönen Değerler

Atanan dizi döner.

Sürüm Bilgisi

Sürüm: Açıklama
7.3.0Dizi bozmada gönderim atamaları için destek eklendi.
7.1.0list() işlevine anahtarlar belirtilebiliyor. Bu, tamsayı olmayan veya sıralı olmayan anahtarlarla dizilerin yok edilmesini sağlar.

Örnekler

Örnek 1 - list() örnekleri

<?php

$veri
= array('kahve', 'uyku', 'kafein');

// Değişkenlerin tamamını listeleyelim
list($içecek, $neyi, $güç) = $veri;
echo
"$içecek$neyi kaçırır, çünkü içinde $güç vardır.\n";

// Bir kısmını listeleyelim
list($içecek, , $güç) = $veri;
echo
"$içecek$güç içerir.\n";

// Sadece üçüncü kalsın
list( , , $güç) = $veri;
echo
"Bana $güç lazım!\n";

// list() dizgelerle çalışmaz
list($bar) = "abcde";
var_dump($bar); // NULL
?>

Örnek 2 - list() kullanım örneği

<?php
$result
= $pdo->query("SELECT id, name FROM employees");
while (list(
$id, $name) = $result->fetch(PDO::FETCH_NUM)) {
echo
"id: $id, name: $name\n";
}
?>

Örnek 3 - İç içe list() kullanımı

<?php

list($a, list($b, $c)) = array(1, array(2, 3));

var_dump($a, $b, $c);

?>
int(1) int(2) int(3)

Örnek 4 - list() ve indis tanımlarının sırası

list() tarafından tüketilecek dizi indislerinin tanımlanma sırası konu dışıdır.

<?php
$foo
= array(2 => 'a', 'foo' => 'b', 0 => 'c');
$foo[1] = 'd';
list(
$x, $y, $z) = $foo;
var_dump($foo, $x, $y, $z);

Çıktısı aşağıdadır (elemanlar list() sözdiziminde yazıldıkları gibi sıralanmıştır):

array(4) { [2]=> string(1) "a" ["foo"]=> string(1) "b" [0]=> string(1) "c" [1]=> string(1) "d" } string(1) "c" string(1) "d" string(1) "a"

Örnek 5 - Anahtarlar ve list()

PHP 7.1.0 itibariyle, list() artık rasgele ifadeler halinde verilebilecek belirgin anahtarlar da içerebilir. Tamsayı ve dize anahtarlarının karıştırılmasına izin verilir; ancak, anahtarı olan ve olmayan öğeler karıştırılamaz.

<?php
$data
= [
[
"id" => 1, "name" => 'Tom'],
[
"id" => 2, "name" => 'Fred'],
];
foreach (
$data as ["id" => $id, "name" => $name]) {
echo
"id: $id, name: $name\n";
}
echo
PHP_EOL;
list(
1 => $second, 3 => $fourth) = [1, 2, 3, 4];
echo
"$second, $fourth\n";

Yukarıdaki örneğin çıktısı:

id: 1, name: Tom id: 2, name: Fred 2, 4

Ayrıca Bakınız

  • each() - Bir diziden, gösterici konumundaki anahtar değer çiftini döndürdükten sonra göstericiyi bir ilerletir
  • array() - Bir dizi oluşturur
  • extract() - Bir dizideki değişkenleri simge tablosuna dahil eder
To Top