BloGGood.ru

Блог Костаневича Степана

До Нового Года осталось:

Блог на разные темы, seo-оптимизация, раскрутка сайта, создание сайта, вкусные эффекты для сайта и многое другое…

Главная » Все про PHP и MySQL » PHP-массивы. Урок 9

PHP-массивы. Урок 9

2014-09-20 / Вр:00:24 / просмотров: 3295

Числовые PHP-массивы

Итак, что такое массив в PHP?
Массив – это своего рода контейнер, который хранит в себе информацию. Что?! Вам кажется, что вы уже это где-то читали в моих уроках? Что ж, вы очень внимательны –  массив действительно похож функцией с переменной. Но разница все-таки есть, и сейчас мы в этом разберемся.
Переменная хранит только одно значение в одном месте, например:

$f = "BlogGood.ru";

Массив же может хранить одно или несколько значений в одном месте.

$f[0] = "Саша";

$f[1] = "Маша";

$f[2] = "Ваня";

$f[3] = "Аня”;

$f[4] = "Костя";

Если не понятно, предлагаю еще посмотреть схемку, где в примере $a – это массив, а  $b – это обычная переменная:

PHP-массивы. Урок 9

Разъяснение:

Видите, в переменной $a  содержится больше контейнеров для информации, чем у переменой $b. Переменная $a – это и есть массив.

Хорошо использовать массив в тех случаях, когда удобней хранить  все имена сотрудников, марки машин и т.п. внутри одной переменной. Вы сейчас увидите как это удобно и все поймете.
Итак, припустим, у нас на работе есть пять сотрудников, хотя их может быть больше 100. Например, Вадим, Лида, Ника, Арсен, Степа.

В обычной переменной мы бы это записали так:

$a = "Вадим";
$b = "Лида";
$v = "Ника";
$g = "Арсен";
$name = "Степа";

А вот так записывается в массиве:

$name[0] = "Вадим";
$name[1] = "Лида";
$name[2] = "Ника";
$name[3] = "Арсен";
$name[4] = "Степа";

Давайте разберемся, что за что отвечает в коде:

$name[0] = "Вадим";

$ – это значок переменной;
name – это имя переменной;
[0] – ключ.
"Вадим" – информация, которая находится в контейнере;
; - это означает, что действие законченно.

Если посмотреть абстрактно, то стандартная схема массива будет такая:

$имя[ключ] = "значение";

Если вам до этого момента было тяжело все воспринять, давайте теперь перейдем к примерам, надеюсь, на примере все станет более понятней.

<html>
<head>
<title>Основы PHP на BlogGood.ru</title>
</head>
<body>
<?php
$bloggood[0] = "Степа";
$bloggood[1] = "Вася";
$bloggood[2] = "Ваня";
$bloggood[3] = "Степан Владимирович";
echo "Со мной работают три работника:
$bloggood[0], $bloggood[2], $bloggood[1]
<br />и один начальник:  $bloggood[3]";
?>
</body>
</html>

Сохраните как «massiv.php» в папку «test-1» локального сервера (см. урок 1).

Введите в браузере адрес:

https://localhost/test-1/massiv.php

Результат:

PHP-массивы. Урок 9

Упрощенный метод записи массива

Смотрите, существуют упрощенные способы записи массива, вам нужно самим выбрать какой вам удобней. Например, массивы можно записать вот так:

- I способ (этот способ вы знаете) -

<?php
$bloggood[0] = "Степа";
$bloggood[1] = "Вася";
$bloggood[2] = "Ваня";
$bloggood[3] = "Степан Владимирович";
echo "Со мной работают три работника:
$bloggood[0], $bloggood[2], $bloggood[1]
<br />и один начальник:  $bloggood[3]";
?>

- II способ -

<?php
$bloggood[] = "Степа";
$bloggood[] = "Вася";
$bloggood[] = "Ваня";
$bloggood[] = "Степан Владимирович";
echo "Со мной работают три работника:
$bloggood[0], $bloggood[2], $bloggood[1]
<br />и один начальник:  $bloggood[3]";
?>

Отсчет  будет идти по порядку: Степа – 0, Степан Владимирович – 3.

- III способ

Создать массив можно, используя функцию array():

<?php
$bloggood = array (0 => "Степа", 1 => "Вася", 2 => "Ваня", 3 => "Степан Владимирович");
echo "Со мной работают три работника:
$bloggood[0], $bloggood[2], $bloggood[1]
<br />и один начальник:  $bloggood[3]";
?>

- IV способ

<?php
$bloggood = array ("Степа", "Вася", "Ваня", "Степан Владимирович");
echo "Со мной работают три работника:
$bloggood[0], $bloggood[2], $bloggood[1]
<br />и один начальник:  $bloggood[3]";
?>

Отсчет  будет идти по порядку: Степа – 0, Степан Владимирович – 3.

Только что мы с вами рассмотрели числовые PHP-массивы, теперь рассмотрим ассоциативный массив.

Ассоциативный PHP-массив.

Если в числовом PHP-массиве в индексе содержаться цифры:

$bloggood[0] = "BlogGood.ru";

тогда ассоциативный массив имеет текстовый индекс:

$bloggood[Степа] = "1500 грн.";

Давайте посмотрим, как это теоретически смотрится на схеме:

Ассоциативный PHP-массив.

Теперь, как это записать в коде PHP:

<html>
<head>
<title>Основы PHP на BlogGood.ru</title>
</head>
<body>
<?php
$bloggood[Оля] = "50у.е.";
$bloggood[Коля] = "10у.е.";
$bloggood[Петя] = "5у.е.";
echo "Зарплата:<br />
у Оли - $bloggood[Оля],<br /> у Коли - $bloggood[Коля],<br /> у Пети - $bloggood[Петя]";
?>
</body>
</html>

Результат:

Ассоциативный PHP-массив.

Ассоциативный массив можно записать и вот таким способом:

<?php
$bloggood = array("Оля" => "50у.е.","Коля" => "10у.е.", "Петя" => "5у.е.");
echo "Зарплата:<br />
у Оли - $bloggood[Оля],<br /> у Коли - $bloggood[Коля],<br /> у Пети - $bloggood[Петя]";
?>

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

Многомерный массив – это такой массив, который содержит в себе еще один массив. На схеме это будет выглядеть вот так:

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

А в коде вот так:

<html>
<head>
<title>Основы PHP на BlogGood.ru</title>
</head>
<body>
<?php
$bloggood[Завод] = array("Оля" => "50у.е.","Коля" => "20у.е.");
$bloggood[Фирма] = array("Петя" => "15у.е.","Миша" => "10у.е.");
echo "На заводе работает Оля, с зарплатой " . $bloggood[Завод][Оля] . " и Коля, с зарплатой " . $bloggood[Завод][Коля] ;
echo "<br>На фирме работает Петя, с зарплатой" . $bloggood[Фирма][Петя] . " и Миша, с зарплатой " . $bloggood[Фирма][Миша];
?>
</body>
</html>

Результат:

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

 

Итак,  мы с вами рассмотрели и испробовали на практике три массива: индексные, ассоциативные и многомерные. Вы узнали, как создается массив, попробовали вывести элементы массива на экран монитора.
Я думаю, на этом пора закончить наш урок. Подписывайтесь на обновления блога! Не пропустите свежие статьи про PHP.

Понравился пост? Помоги другим узнать об этой статье, кликни на кнопку социальных сетей ↓↓↓

Получай обновления блога!!! Подпишись:

Популярные статьи:

4 Ответов на комментарий - PHP-массивы. Урок 9

  1. Анастасия

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

  2. Степан => автор блога Степан => автор блога

    Надеюсь и следующие уроки будут для Вас, Анастасия, полезными и интересными!

  3. Вот III способ более верный и существует функция для перебора массива foreach.
    Из мануала: Существует два вида синтаксиса foreach:
    foreach (array_expression as $value)
    и
    foreach (array_expression as $key => $value)

    Очень удобная штука. К примеру вывести select.

    ///////// Массив месяцев /////////
    $mesyc = array( 
                   'Январь' => 'январь', 
                   'Февраль' => 'февраль',
                   'Март' => 'март',
                   'Апрель' => 'апрель',
                   'Май' => 'май',
                   'Июнь' => 'июнь',
                   'Июль' => 'июль',
                   'Август' => 'август',
                   'Сентябрь' => 'сентябрь',
                   'Отябрь' => 'отябрь',
                   'Ноябрь' => 'ноябрь',
                   'Декабрь' => 'декабрь'
                   );
    
    ///////// Выводим Месяцы в select
    $mesicy  = "<select name=\"mes\" required>\n";
    $mesicy .= "<option value=\"\">Месяц</option>\n";
    foreach($mesyc as $key => $value) {
        $mesicy  .= "<option value=\"".$value."\">".$key."</option>\n";
    }
    $mesicy .= "</select>\n";

    Теперь на странице вывода просто прописываем

    И в итоге получится полноценный select

  4. Че то не написалось
    На странице вывода просто прописываем

    <?=$mesicy?>

Добавить комментарий

;-) :| :x :twisted: :smokes: :smile: :shock: :sad: :rose: :roll: :razz: :pop-corne: :oops: :o :mrgreen: :lol: :idea: :grin: :gazeta: :evil: :cry: :cool: :coffe: :arrow: :???: :?: :!:

Чтобы добавить в комментарий код HTML, PHP, CSS, JavaScript, нужно сделать так: [code] ваш код [/code]

Метки: ,

Мои цели на 2018-2019:

1). Закончить тему «Bootstrap»

2). Закончить тему «Все про PHP и MySQL»

3). Создать портфолио и мини интернет-магазин шаблонов

4). Довести количество статей до 800

5). Добиться посещаемости 3000 человек/сутки

6). Увеличить число подписчиков до 250

Статистика по блогу

Количество записей на блоге: 801
Количество страниц на блоге: 20
Количество рубрик на блоге: 28
Количество меток на блоге: 72
Количество комментариев на блоге: 4529