Шаблоны проектирования PHP

Шаблоны проектирования PHP
PHP — Массивы

Массив — это структура данных, в которой в одном значении хранится один или несколько значений аналогичного типа. Например, если вы хотите сохранить 100 чисел, то вместо определения 100 переменных легко определить массив длиной 100.

Существует три различных типа массивов, и доступ к каждому значению массива осуществляется с использованием идентификатора c, который называется индексом массива.

  • Числовой массив — массив с числовым индексом. Значения хранятся и доступны линейно.

  • Ассоциативный массив — массив со строками в качестве индекса. При этом значения элементов хранятся вместе со значениями ключей, а не в строгом линейном порядке индекса.

  • Многомерный массив — массив, содержащий один или несколько массивов и значений, доступен с использованием нескольких индексов.

ПРИМЕЧАНИЕ. Встроенные функции массива приведены в справочнике функций PHP Array Functions.

Числовой массив

Эти массивы могут хранить числа, строки и любой объект, но их индекс будет представлен числами. По умолчанию индекс массива начинается с нуля.

пример

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

Здесь мы использовали функцию array () для создания массива. Эта функция объясняется в справочнике по функциям.

Живая демонстрация
<html>
   <body>
   
      <?php
         /* First method to create array. */
         $numbers = array( 1, 2, 3, 4, 5);
         
         foreach( $numbers as $value ) {
            echo "Value is $value <br />";
         }
         
         /* Second method to create array. */
         $numbers[0] = "one";
         $numbers[1] = "two";
         $numbers[2] = "three";
         $numbers[3] = "four";
         $numbers[4] = "five";
         
         foreach( $numbers as $value ) {
            echo "Value is $value <br />";
         }
      ?>
      
   </body>
</html>

Это даст следующий результат —

Value is 1 
Value is 2 
Value is 3 
Value is 4 
Value is 5 
Value is one 
Value is two 
Value is three 
Value is four 
Value is five 

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

Ассоциативные массивы очень похожи на числовые массивы с точки зрения функциональности, но отличаются по индексу. Ассоциативный массив будет иметь свой индекс в виде строки, чтобы вы могли установить прочную связь между ключом и значениями.

Для хранения заработной платы сотрудников в массиве массив с числовой индексацией не лучший выбор. Вместо этого мы могли бы использовать имена сотрудников в качестве ключей в нашем ассоциативном массиве, и значение было бы их соответствующей зарплатой.

ПРИМЕЧАНИЕ. — Не храните ассоциативный массив внутри двойных кавычек при печати, иначе он не вернет никакого значения.

пример

Живая демонстрация
<html>
   <body>
      
      <?php
         /* First method to associate create array. */
         $salaries = array("mohammad" => 2000, "qadir" => 1000, "zara" => 500);
         
         echo "Salary of mohammad is ". $salaries['mohammad'] . "<br />";
         echo "Salary of qadir is ".  $salaries['qadir']. "<br />";
         echo "Salary of zara is ".  $salaries['zara']. "<br />";
         
         /* Second method to create array. */
         $salaries['mohammad'] = "high";
         $salaries['qadir'] = "medium";
         $salaries['zara'] = "low";
         
         echo "Salary of mohammad is ". $salaries['mohammad'] . "<br />";
         echo "Salary of qadir is ".  $salaries['qadir']. "<br />";
         echo "Salary of zara is ".  $salaries['zara']. "<br />";
      ?>
   
   </body>
</html>

Это даст следующий результат —

Salary of mohammad is 2000
Salary of qadir is 1000
Salary of zara is 500
Salary of mohammad is high
Salary of qadir is medium
Salary of zara is low

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

Многомерный массив. Каждый элемент основного массива также может быть массивом. И каждый элемент в подмассиве может быть массивом и так далее. Доступ к значениям в многомерном массиве осуществляется с помощью нескольких индексов.

пример

В этом примере мы создаем двумерный массив для хранения оценок трех студентов по трем предметам:

Этот пример представляет собой ассоциативный массив, вы можете создать числовой массив таким же образом.

Живая демонстрация
<html>
   <body>
      
      <?php
         $marks = array( 
            "mohammad" => array (
               "physics" => 35,
               "maths" => 30,	
               "chemistry" => 39
            ),
            
            "qadir" => array (
               "physics" => 30,
               "maths" => 32,
               "chemistry" => 29
            ),
            
            "zara" => array (
               "physics" => 31,
               "maths" => 22,
               "chemistry" => 39
            )
         );
         
         /* Accessing multi-dimensional array values */
         echo "Marks for mohammad in physics : " ;
         echo $marks['mohammad']['physics'] . "<br />"; 
         
         echo "Marks for qadir in maths : ";
         echo $marks['qadir']['maths'] . "<br />"; 
         
         echo "Marks for zara in chemistry : " ;
         echo $marks['zara']['chemistry'] . "<br />"; 
      ?>
   
   </body>
</html>

Это даст следующий результат —

Marks for mohammad in physics : 35
Marks for qadir in maths : 32
Marks for zara in chemistry : 39
Выберите поля, которые будут показаны. Прочие будут скрыты. Перктаскивайте мышкой для изменения порядка полей.
  • Изображение
  • SKU
  • Рейтинг
  • Цена
  • Запасы
  • Доступность
  • В корзину
  • Описание
  • Содержимое
  • Вес
  • Размеры
  • Дополнительная информация
  • Атрибуты
  • Custom attributes
  • Настраиваемые поля
Сравнить
Список желаний 0
Открыть страницу желаний Продолжить покупки