PHP уроки
ПРОСТО самая лучшая обучалка PHP!
  • Студия LPHPRU
  • Уроки PHP
  • Контакты
  • Помощь
Меню
  • PHP - с чего начать?
  • Уроки PHP
  • Функции PHP
  • Массивы
  • Denwer
  • MySQL
  • Информация
  • Dreamweaver уроки
  • JQuery уроки
  • Галерея
Календарь
Январь (2021)
ПнВтСрЧтПтСбВс
    123
45678910
11121314151617
18192021222324
25262728293031
В продаже

  • Что нового?

    • Тест №2
    • Тест №1 для разработчиков
    • PHP 5.6 RC1
    • SQL. Как cкопировать данные одной колонки в другую, в той же таблице
    • GRUB изменить порядок загрузки OS в Linux
    • SSH - вход на сервер без ввода пароля
    • PhpMyAdmin - проблема с загрузкой большого файла на сервер
  • Комментарии

    • тут нечего не понятно
    • Может уже пора на WebStorm переходит...
    • Здравствуйте. 10 лет пользуюсь др...
    • Была такая проблема, решалась пе...
    • Возможно с течением времени этот...
  • TOP-5

    • Метод POST (2939500)
    • Привет, МИР! (906942)
    • Метод GET (661654)
    • Операторы (601599)
    • Firefox уже запущен, но не отвечает... (346830)

Одномерный массив

Главная » Массивы » Одномерный массив
PHP урок № 68

Cоздание одномерных массивов в PHP5.

Если говорить человеческим языком, то массивом называется некая зарезервированная область, в которой упорядочено содержатся данные. Если взять, например, человека, то у каждого есть свои черты как внешности так и характера. Попробуем от этого оттолкнуться, проведя параллель.
Черты характера
  1. смелый
  2. верный
  3. добрый
  4. весёлый
  5. сильный
Вот, в принципе, мы создали массив с данными. Его схема представления полностью идентична с тем, как содержатся данные в стеке массива.
Стек (англ. stack — стопка) — структура данных с методом доступа к элементам LIFO (англ. Last In — First Out, «последним пришел — первым вышел»). Чаще всего принцип работы стека сравнивают со стопкой тарелок: чтобы взять вторую сверху, нужно взять верхнюю.

Википидея
Все вышеперечисленные свойства можно отнести к характеру человека. В виду этого назовём массив -как и всё на свете тоже имеет имя- character (от русс. характер). Теперь для того, чтобы обратиться к этому ящику под именем character, нам обязательно следует указать индекс того типа характера, который нам нужно извлечь из этого массива character.
Массив - последовательность однотипных элементов, число которых фиксировано и которым присвоено одно имя. Положение элемента в массиве однозначно определяется его индексами. Выделяют одномерные массивы (вектора) и двумерные массивы (матрицы).
Индекс также называют ключом массива, смысл от этого не меняется.
А индексом массива в данном примере является его номер строки, т.е. верный имеет индекс 2, весёлый - индекс 4. На этом с аллегориями пока закончим, перейдём уже к самому синтаксису написания кода создания массива.

Одномерный массив

Листинг № 1 - Первый способ. Создаём массив character

<?php

        
        $character
[1] = "смелый";
        
$character[2] = "верный";
        
$character[3] = "добрый";
        
$character[4] = "весёлый";
        
$character[5] = "сильный";
        
        
// массив создан
        // это - массив, и в нём содержатся все черты характера,
                //которые мы в него поместили
        
$character; 
        
        
// чтобы вывести какую-либо черту характера, 
                // следует обратиться к массиву, указав на индекс - это цифры 
                // в квадратных скобках
        
        
echo $character[5]; // выведет на экран - сильный 

?>
Такой способ создания массивов на практике применяется редко, его практичность вызывает сомнение, он скорее подходит в качестве примера, показа структуры массива. Рассмотрим ещё один способ.

Листинг № 2 - Второй способ. Создаём массив с помощью функции array

<?php 

$character 
= array(1=>'смелый',2=>'верный',3=>'добрый',4=>'весёлый',5=>'сильный');
    
    
// массив создан
    
    
echo $character[4]; // весёлый 

?>
Этот способ выглядит уже более рациональным, хотя до идеала тоже не дотягивает. Здесь массив создан с помощью встроенной функции PHP array(). В скобках присутствуют пары индекс => значение. Знак => - является указателем для присваивания индекса значению или наоборот значению индекс. Рассмотрим ещё пример.

Листинг № 3 - Третий способ. Создание массива с помощью функции array без указателей

<?php 

    $character 
= array('смелый','верный','добрый','весёлый','сильный');
    
    
// массив создан
    
    
echo $character[4]; // сильный
    

?>
                                
Сравните листинг 2 и листинг 3. Видите разницу в выводе на монитор?! Ни какой ошибки здесь нет, всё гораздо прозаичней. Смотрите ниже лампочку.
Все счётчики в программировании по умолчанию начинают свой отсчёт с нуля!
Теперь всё встало на свои места, т.е. без указателя (=>) в скобках массива, значениям присваивается индекс по порядку, начиная с нуля. Итак, индексу ноль соответствует значение смелый (0=>смелый) и т.д. по порядку.

Листинг № 4 - Четвёртый способ. Создание массива с помощью функции array с указателем и без указателя

<?php 

    $character 
= array('смелый',4 =>'верный','добрый',2 =>'весёлый','сильный');
    
    
// массив создан
    
    
echo $character[0]; // смелый
    
echo $character[1]; // пусто
    
echo $character[2]; // весёлый
    
echo $character[3]; // пусто 
    
echo $character[4]; // верный 
    
echo $character[5]; // добрый 
    
echo $character[6]; // сильный 

?>
В этом примере на первый взгляд непонятно что откуда берётся, но всё заключено в абсолютную логику. Попробуем разобраться: счёт ведётся в скобках, туда посматриваем и вникаем.
  • смелый - по умолчанию присваивается ноль (не имеет указателя на индекс)
  • верный - имеет указатель на индекс 4, хотя по умолчанию должен быть 1 =>
  • добрый - по умолчанию должен быть индекс 2 =>, но индекс 2 принудительно присвоен типу характера "весёлый"
  • весёлый - всё понятно, имеет второй индекс
  • сильный - по умолчанию должен иметь индекс 4, но он уже занят. Следом за четвёркой идёт цифра 5 и первый непроиндексированный тип характера, следом за четвёртым индексом - идёт "добрый" - индекс 5, а следом ещё не имеющим индекса, идёт тип характера сильный - он и будет с шестёркой.

На этом урок закончен.

Обсудить на форуме

SETTER © LPHP.RU
Администрация сайта
19.07.2009 01:59:32

Напишите свой комментарий
Ваше имя
Сообщение
Введите цифры с картинки:
 

Комментарии

Ко 07.10.2012 20:12:40
Урок доходчивый, спасибо!
Константин 24.07.2013 08:25:52
супер супер все понятно, спасибо
  • Яндекс.Метрика Здесь находится аттестат нашего WM идентификатора 185571665285
  • "LPHPRU" © 2009-2021