Creating Indexed Arrays
Часть раздела Основы путешествия по PHP на Coddy — урок 35 из 71.
Теперь, когда вы понимаете, что такое массивы, давайте посмотрим, как их создавать. PHP предоставляет два способа создания индексированного массива.
Самый распространённый подход использует квадратные скобки:
<?php
$colors = ["Red", "Green", "Blue"];
?>Вы также можете использовать функцию array(), которая делает точно то же самое:
<?php
$colors = array("Red", "Green", "Blue");
?>Оба метода создают одинаковые массивы. Синтаксис с квадратными скобками короче и современнее, поэтому вы чаще увидите его в современном коде PHP.
Массивы могут содержать любые типы данных — строки, числа, булевы значения или даже смесь:
<?php
$numbers = [10, 20, 30, 40];
$mixed = ["Hello", 42, true];
?>Вы также можете создать пустой массив и добавить в него элементы позже:
<?php
$tasks = [];
?>Помните, PHP автоматически присваивает номера индексов, начиная с 0. Таким образом, в $colors "Red" находится по индексу 0, "Green" по индексу 1, а "Blue" по индексу 2.
Задание
ЛегкоПрочитайте три значения из ввода: строку fruit1, строку fruit2 и строку fruit3.
Создайте индексированный массив с именем $fruits, содержащий эти три фрукта в порядке их получения.
Затем прочитайте два целых числа из ввода: num1 и num2.
Создайте индексированный массив с именем $numbers, содержащий эти два числа в порядке их получения.
Наконец, создайте пустой массив с именем $emptyList.
Чтобы вывести содержимое массива в виде строки, разделенной запятыми, используйте implode(). Она принимает строку-разделитель и массив, и соединяет все элементы вместе:
implode(",", $fruits) → Apple,Banana,Cherry
Выведите следующее на отдельных строках:
- Слово
Fruits:за которым следует пробел и три фрукта, разделенные запятыми (без пробелов после запятых) - Слово
Numbers:за которым следует пробел и два числа, разделенные запятыми (без пробелов после запятых) - Слово
Empty:за которым следует пробел и либоyes, если пустой массив не содержит элементов, либоnoв противном случае (используйте тернарный оператор сcount()для проверки, пустой ли массив)
Пример:
Если входные данные Apple, Banana, Cherry, 10 и 20, вывод должен быть:
Fruits: Apple,Banana,Cherry
Numbers: 10,20
Empty: yesЕсли входные данные Mango, Orange, Grape, 5 и 15, вывод должен быть:
Fruits: Mango,Orange,Grape
Numbers: 5,15
Empty: yesШпаргалка
PHP предоставляет два способа создания индексированных массивов:
Использование квадратных скобок (современный синтаксис):
<?php
$colors = ["Red", "Green", "Blue"];
?>Использование функции array():
<?php
$colors = array("Red", "Green", "Blue");
?>Массивы могут содержать данные любого типа:
<?php
$numbers = [10, 20, 30, 40];
$mixed = ["Hello", 42, true];
?>Создание пустого массива:
<?php
$tasks = [];
?>PHP автоматически присваивает номера индексов, начиная с 0.
Попробуйте сами
<?php
// Считываем ввод фруктов
$fruit1 = trim(fgets(STDIN));
$fruit2 = trim(fgets(STDIN));
$fruit3 = trim(fgets(STDIN));
// Считываем ввод чисел
$num1 = intval(fgets(STDIN));
$num2 = intval(fgets(STDIN));
// TODO: Напишите свой код ниже
// 1. Создайте индексированный массив $fruits, содержащий три фрукта
// 2. Создайте индексированный массив $numbers, содержащий два числа
// 3. Создайте пустой массив $emptyList
// 4. Выведите результаты как указано
?>В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Comparison & Logical Operators
Comparison OperatorsEquality & IdentityLogical Operators Part 1Logical Operators Part 2Recap - Simple Logic2Variables and Data Types
NumbersStrings and QuotesBooleansNaming ConventionsRecap - Variable InitEmpty VariablesString ConcatenationGetting User InputCast to Different Types5Conditional Logic
If StatementIf - ElseThe Ternary OperatorNull Coalescing OperatorSwitch StatementRecap - Making Decisions3Basic Operators
Arithmetic OperatorsModulo OperatorExponentiation OperatorCombined AssignmentIncrement/DecrementOperator PrecedenceRecap - Simple CalculationsString Operators6Arrays Part 1 - Indexed
Introduction to ArraysCreating Indexed ArraysAccessing Elements by IndexModifying Elements by IndexArray Size with CountAdding Elements to an ArrayRecap - Managing a Simple List