PHP Курс

PHP массивы: индексные, ассоциативные, многомерные и строковые функции

Самоучитель Python 3, собранный из материалов данного сайта.Предназначен в основном для тех, кто хочет изучить язык программирования Python с нуля.

Индексные массивы

<?php
$fruits = ["яблоко", "банан", "вишня"];
echo $fruits[0];          // яблоко
$fruits[] = "финик";      // добавить в конец
echo count($fruits);      // 4

// Функции для массивов
sort($fruits);            // сортировка по месту
$sliced = array_slice($fruits, 1, 2);
$merged = array_merge($fruits, ["ежевика"]);

Ассоциативные массивы

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

echo $person["name"];           // Alice
$person["city"] = "Москва";     // добавить новый ключ

// Проверка и удаление
if (array_key_exists("age", $person)) {
    unset($person["age"]);
}

// Получить ключи и значения
$keys   = array_keys($person);
$values = array_values($person);

Полезные функции для массивов

<?php
$nums = [3, 1, 4, 1, 5, 9, 2, 6];

echo array_sum($nums);      // 31
echo max($nums);             // 9
echo min($nums);             // 1

$unique   = array_unique($nums);
$filtered = array_filter($nums, fn($n) => $n > 3); // [4, 5, 9, 6]
$doubled  = array_map(fn($n) => $n * 2, $nums);

Строковые функции

<?php
$str = "  Hello, World!  ";

echo strlen($str);                         // 18
echo strtolower($str);                     // "  hello, world!  "
echo strtoupper($str);                     // "  HELLO, WORLD!  "
echo trim($str);                           // "Hello, World!"
echo str_replace("World", "PHP", $str);   // "  Hello, PHP!  "

$parts  = explode(", ", "one, two, three"); // ["one", "two", "three"]
$joined = implode(" - ", $parts);           // "one - two - three"

echo substr("Hello World", 6, 5);          // "World"
echo strpos("Hello World", "World");       // 6
echo str_contains("Hello World", "World"); // true (PHP 8+)

Многомерные массивы

<?php
$students = [
    ["name" => "Alice", "grade" => 95],
    ["name" => "Bob",   "grade" => 82],
    ["name" => "Carol", "grade" => 91],
];

foreach ($students as $student) {
    echo "{$student['name']}: {$student['grade']}
";
}

// Сортировка по оценке (по убыванию)
usort($students, fn($a, $b) => $b["grade"] <=> $a["grade"]);