PHP Academy · Lektion

Indexerade och associativa arrayer

Skapa och hämta värden ur båda typerna av PHP-arrayer.

Lektion 1 av 413 steg

Indexerade och associativa arrayer är en gratis lektion i PHP Academy på CoddyKit. Detta är lektion 1 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för PHP Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i PHP Academy innehåller totalt 4 lektioner.

Arrayer i PHP

PHP-arrayer är ordnade mappningar — de kan fungera som listor, dictionaries, stackar och köer. Det finns två huvudvarianter:

  • Indexerade arrayer — numeriska nycklar (0, 1, 2…)
  • Associativa arrayer — strängnycklar

Skapa indexerade arrayer

Använd den korta array-syntaxen [] eller array():

<?php
$colors = ['red', 'green', 'blue'];    // short syntax
$nums   = array(10, 20, 30);            // long syntax

echo $colors[0]; // red
echo $nums[2];   // 30
echo count($colors); // 3

Lägga till och ta bort element

Lägg till sist med [] och ta bort med unset():

<?php
$items = ['a', 'b', 'c'];
$items[] = 'd';      // append
$items[] = 'e';

unset($items[1]);    // remove 'b'

print_r($items);
// [0=>'a', 2=>'c', 3=>'d', 4=>'e'] — index gap!

Associativa arrayer

Använd strängnycklar för att skapa en dictionary-liknande struktur:

<?php
$person = [
    'name'  => 'Alice',
    'age'   => 30,
    'email' => 'alice@example.com',
];

echo $person['name'];   // Alice
$person['city'] = 'London';  // add new key
unset($person['email']);      // remove key

Kontrollera om nycklar finns

Kontrollera om en nyckel eller ett värde finns i en array:

<?php
$config = ['debug' => false, 'version' => '2.0'];

var_dump(array_key_exists('debug', $config));  // true
var_dump(isset($config['debug']));             // false! debug=false, not NULL
var_dump(in_array('2.0', $config));            // true

array_key_exists jämfört med isset

isset() returnerar false för nycklar med värdet NULL; array_key_exists() returnerar true även för NULL-värden:

<?php
$data = ['key' => null];

var_dump(isset($data['key']));              // false
var_dump(array_key_exists('key', $data));  // true

Packa upp arrayer

Destrukturera arrayer till variabler med den korta list-syntaxen:

<?php
$point = [10, 20, 30];
[$x, $y, $z] = $point;
echo "x=$x y=$y z=$z"; // x=10 y=20 z=30

// Skip elements
[, $second] = [1, 2, 3];
echo $second; // 2

Slå samman arrayer

Kombinera arrayer med array_merge() eller spridningsoperatorn:

<?php
$a = ['x' => 1, 'y' => 2];
$b = ['y' => 99, 'z' => 3];

$merged = array_merge($a, $b);
print_r($merged); // x=>1, y=>99 (b overwrites), z=>3

$union = $a + $b;
print_r($union);  // x=>1, y=>2 (a wins), z=>3

Skära ut delar av arrayer

Extrahera en del av en array med array_slice():

<?php
$letters = ['a', 'b', 'c', 'd', 'e'];

$slice = array_slice($letters, 1, 3);
print_r($slice); // ['b', 'c', 'd']

$last2 = array_slice($letters, -2);
print_r($last2); // ['d', 'e']

Stack- och köoperationer

PHP-arrayer kan även användas som stackar och köer:

<?php
$stack = [];
array_push($stack, 'a', 'b');
$top = array_pop($stack);  // 'b' — LIFO

$queue = ['first', 'second'];
array_push($queue, 'third');
$front = array_shift($queue);  // 'first' — FIFO

array_unshift($queue, 'zero'); // prepend

compact och extract

compact() bygger en associativ array från variabelnamn; extract() gör det omvända:

<?php
$name = 'Alice';
$age  = 30;

$data = compact('name', 'age');
// ['name' => 'Alice', 'age' => 30]

extract(['city' => 'London', 'country' => 'UK']);
echo $city;    // London
echo $country; // UK

Snabb kontroll

Vad returnerar array_key_exists('key', $arr) när nyckeln finns men värdet är NULL?

Sammanfattning: indexerade och associativa arrayer

Grunderna i PHP-arrayer:

  • Indexerade arrayer använder numeriska nycklar; associativa arrayer använder strängnycklar
  • Lägg till sist med $arr[] = value
  • Kontrollera nycklar med array_key_exists() jämfört med isset()
  • Destrukturera med [$a, $b] = $arr
  • Slå samman med array_merge() eller + (olika regler för överskrivning)
  • Stack- och köoperationer: push, pop, shift, unshift
Gratis att börja

Lär dig PHP med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
49
Lektioner
195

Vanliga frågor

Är lektionen ”Indexerade och associativa arrayer” gratis?

Ja – hela texten till ”Indexerade och associativa arrayer” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i PHP Academy, kan Ni uppgradera till CoddyKit PRO. Kursen i PHP Academy innehåller totalt 4 lektioner.

Vad lär jag mig i ”Indexerade och associativa arrayer”?

Skapa och hämta värden ur båda typerna av PHP-arrayer. Ni övar på PHP Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig PHP Academy?

Du behöver inga förkunskaper. Utbildningen i PHP Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 1 av 4.

Hur lång tid tar lektionen ”Indexerade och associativa arrayer”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här PHP Academy-lektionen?

Ja. Varje PHP Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Indexerade och associativa arrayer
  2. Flerdimensionella arrayer
  3. Sortera och söka i arrayer
  4. Funktioner för arraytransformering
← Tillbaka till PHP Academy