List(): Skillnad mellan sidversioner

Från Wiki.linux.se
Hoppa till navigering Hoppa till sök
Ingen redigeringssammanfattning
Rad 72: Rad 72:
</pre>
</pre>
[[Kategori:PHP]]
[[Kategori:PHP]]
[[Kategori:Array]]

Versionen från 11 augusti 2024 kl. 04.47

list

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

list — Tilldela variabler som om de vore en array

Beskrivning

list(mixed $var, mixed ...$vars = ?): array Liksom array(), är detta inte riktigt en funktion, utan en språkkonstruktion. list() används för att tilldela en lista av variabler i en operation. Strängar kan inte packas upp och list()-uttryck kan inte vara helt tomma.

Notera:

Före PHP 7.1.0 fungerade list() endast på numeriska arrayer och antog att de numeriska indexen började vid 0.

Parametrar

var
En variabel.
vars
Ytterligare variabler.

Returvärden

Returnerar den tilldelade arrayen.

Ändringslogg

Version Beskrivning
7.3.0 Stöd för referenstilldelningar i array-destrukturering lades till.
7.1.0 Det är nu möjligt att specificera nycklar i list(). Detta möjliggör destrukturering av arrayer med icke-heltals- eller icke-sekventiella nycklar.

Se även

each()
Returnerar det nuvarande nyckel- och värdeparet från en array och flyttar arraypekaren framåt
array()
Skapa en array
extract()
Importerar variabler till den aktuella symboltabellen från en array

Exempel på användning av list()

Dessa exempel visar olika sätt att använda `list()` för att tilldela värden till variabler från en array i PHP.

Exempel 1: Grundläggande användning

$info = ['äpple', 'rött', 150];
list($frukt, $färg, $vikt) = $info;
echo $frukt; // Utmatning: äpple

Exempel 2: Hoppa över värden

$data = [1, 2, 3, 4];
list($första, , $tredje, ) = $data;
echo $tredje; // Utmatning: 3

Exempel 3: Användning med listor med nycklar (från PHP 7.1)

$data = ['första' => 1, 'andra' => 2];
list('första' => $a, 'andra' => $b) = $data;
echo $a; // Utmatning: 1

Exempel 4: Kombinera med array()

list($a, $b) = array(1, 2);
echo $b; // Utmatning: 2

Exempel 5: Arbeta med listor i looper

$lista = [
    ['kaffe', 'svart', 'koffein'],
    ['te', 'grönt', 'teanin']
];
foreach ($lista as list($dryck, $färg, $stimulant)) {
    echo "Dryck: $dryck, Färg: $färg, Stimulant: $stimulant\n";
}