РНР массивы

PHP Array - перечень данных (содержит значения на основе ключа). Массив используется для содержания множества аналогичных значений в одной переменной.

Преимущество массивов

Типы массивов

Существует три типа РНР массивов:

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

Индексированный массив, это массив, который по умолчанию представлен числовым индексом Все элементы массива представлены индексом который начинается с 0. Индексированные массивы могут хранить числа, строки или любые объекты. Проиндексированный массив PHP также известен как числовой массив.

Существует два способа определить индексируемый массив:

1-й способ:

$size=array("Big","Medium","Short");

2-й способ:

$size[0]="Big";  
$size[1]="Medium";  
$size[2]="Short";

Примеры индексированных массивов:

Пример 1:

<?php  
$size=array("Big","Medium","Short");  
echo "Size: $size[0], $size[1] and $size[2]";  
?>
 
Output:
Size: Big, Medium and Short

Пример 2:

<?php  
$size[0]="Big";  
$size[1]="Medium";  
$size[2]="Short";  
echo "Size: $size[0], $size[1] and $size[2]";  
?>
 
Output:
Size: Big, Medium and Short

Перебор числовых РНР массивов

Мы можем легко перебрать массив с помощью цикла foreach

Пример:

<?php    
$size=array("Big","Medium","Short");  
foreach( $size as $s )  
{  
  echo "Size is: $s<br />";  
}  
?>
 
Output:
Size is: Big
Size is: Medium
Size is: Short

Счётчик длинны числового массива

PHP предоставляет функцию COUNT (), которая возвращает длину массива.

<?php    
$size=array("Big","Medium","Short");  
echo count($size);  
?>
 
Output:
3

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

PHP позволяет связать имя / ярлык с каждым элементами массива в PHP, используя => символ. Таким способом, мы можете с лёгкостью вспомнить элемент, потому что каждый элемент представляет собой лейбол, а не числовой список.

Есть два способа определения ассоциативного массива:
Первый способ:

$salary=array("Arjun"=>"550000","Krishna"=>"2500000","Radha"=>"2000000");

Второй способ:

$salary["Arjun"]="900000";  
$salary["Krishna"]="3500000";  
$salary["Radha"]="3000000";

Примеры ассоциативного массива

<?php      
$salary=array("Arjun"=>"550000","Krishna"=>"250000","Radha"=>"200000");  
echo "Arjun salary: ".$salary["Arjun"]."<br/>";  
echo "Krishna salary: ".$salary["Krishna"]."<br/>";  
echo "Radha salary: ".$salary["Radha"]."<br/>";  
?>
 
Output:
Arjun salary: 550000
Krishna salary: 250000
Radha salary: 200000
<?php      
$salary["Arjun"]="900000";  
$salary["Krishna"]="3500000";  
$salary["Radha"]="3000000";
echo "Arjun salary: ".$salary["Arjun"]."<br/>";  
echo "Krishna salary: ".$salary["Krishna"]."<br/>";  
echo "Radha salary: ".$salary["Radha"]."<br/>";  
?>
 
Output:
Arjun salary: 900000
Krishna salary: 3500000
Radha salary: 3000000

Перебор ассоциативных РНР массивов

Мы можем легко перебрать массив с помощью цикла foreach

Пример:

<?php      
$salary=array("A"=>"550000","B"=>"250000","C"=>"200000");  
foreach($salary as $k => $v) {  
echo "Key: ".$k." Value: ".$v."<br/>";  
}  
?>
 
Output:
Key: A Value: 550000
Key: B Value: 250000
Key: C Value: 200000

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

Многомерный РНР массив также известен как массив в массиве. Это позволяет вам хранить табличные данные в массивах. PHP multidimensional array is also known as array of arrays. Многоуровневый массив можно представить в форме матрицы с колонками и столбцами.

Определение массива:

$emp = array  
          (  
          array(1,"abc",400000),  
          array(2,"pqr",500000),  
          array(3,"xyz",300000)  
          );  
 

Примеры многоуровневых РНР массивов:

Давайте рассмотрим простой пример многомерного РНР массива, который выводит следующую таблицу данных. В этом примере отображено три строки и три столбца.

Id	Name	Salary
1	abc	400000
2	pqr	500000
3	xyz	300000
<?php      
        $emp = array  
          (  
          array(1,"abc",400000),  
          array(2,"pqr",500000),  
          array(3,"xyz",300000)  
          );  
          
        for ($row = 0; $row < 3; $row++) {  
          for ($col = 0; $col < 3; $col++) {  
            echo $emp[$row][$col]."  ";  
          }  
          echo "<br/>";  
        }  
        ?>    
        
 
Output:
1 abc 400000
2 pqr 500000
3 xyz 300000

Функции РНР массивов

PHP предоставляет различные функции массивов для доступа к их элементами. Ниже приведены одни из важных функций массива:

  1. Функция array()

  2. Функция array() создаёт и возвращает массив. Она позволяет создавать индексируемые, ассоциативные и многомерные массивы.

    Синтаксис:

    array array ([ mixed $... ] )
    

    Пример:

    <?php      
    $season=array("summer","winter","spring","autumn");    
    echo "Season are: $season[0], $season[1], $season[2] and $season[3]";    
    ?> 
    
     
    Output:
    Season are: summer, winter, spring and autumn
    
  3. Функция array_change_key_case()

  4. Функция array_change_key_case() меняет регистр всех ключей массива.

    Синтаксис:

    array array_change_key_case ( array $array [, int $case = CASE_LOWER ] )
    

    Пример:

    <?php      
           $salary=array("a"=>"550000","b"=>"250000","c"=>"200000");    
           print_r(array_change_key_case($salary,CASE_UPPER));   
          ?>
    
     
    Output:
    Array ( [A] => 550000 [B] => 250000 [C] => 200000 )
    

    Пример 2:

    <?php      
     $salary=array("A"=>"550000","B"=>"250000","C"=>"200000");    
     print_r(array_change_key_case($salary,CASE_LOWER));   
    ?>
    
     
    Output:
    Array ( [a] => 550000 [b] => 250000 [c] => 200000 )
    
  5. Функция array_chunk()

  6. функция array_chunk() разбирает массив на части. Используя метод array_chunk (), вы можете разделить массив на множество частей.

    Синтаксис:

    array array_chunk ( array $array , int $size [, bool $preserve_keys = false ] )      
    

    Пример:

    <?php      
     $salary=array("Sonoo"=>"550000","Vimal"=>"250000","Ratan"=>"200000");    
     print_r(array_chunk($salary,2));   
    ?>
    
     
    Output:
    Array (
    [0] => Array ( [0] => 550000 [1] => 250000 )
    [1] => Array ( [0] => 200000 )
    )   
    
  7. Функция count()

  8. Функция count() считает количество всех элементов массива

    Синтаксис:

    int count ( mixed $array_or_countable [, int $mode = COUNT_NORMAL ] ) 
    

    Пример:

    <?php      
     $season=array("summer","winter","spring","autumn");    
     echo count($season);    
    ?>
    
     
    Output:
    4
    
  9. Функция sort()

  10. Функция sort() сортируется все элементы массива

    Синтаксис:

    bool sort ( array &$array [, int $sort_flags = SORT_REGULAR ] )  
    

    Пример:

    <?php      
          $season=array("summer","winter","spring","autumn");    
          sort($season);  
          foreach( $season as $s )    
          {    
            echo "$s<br />";    
          }    
          ?>   
          
    
     
    Output:
    autumn
    spring
    summer
    winter
    
  11. Функция array_reverse()

  12. функция array_reverse() возвращает массив, содержащий элементы в обратном порядке

    Синтаксис:

    array array_reverse ( array $array [, bool $preserve_keys = false ] ) 
    

    Пример:

    <?php      
    $season=array("summer","winter","spring","autumn");    
    $reverseseason=array_reverse($season);  
    foreach( $reverseseason as $s )    
    {    
      echo "$s<br />";    
    }    
    ?>
    
     
    Output:
    autumn
    spring
    winter
    summer
    
  13. Функция array_search()

  14. Функция array_search() находит указанные значения в массиве. Возвращает ключ если поиск успешный

    Синтаксис/

    mixed array_search ( mixed $needle , array $haystack [, bool $strict = false ] ) 
    

    Пример:

    <?php      
    $season=array("summer","winter","spring","autumn");    
    $key=array_search("spring",$season);  
    echo $key;    
    ?>  
    
     
    Output:
    2
    
  15. Функция array_intersect()

  16. Функция array_intersect() возвращает пересечение двух массивов. Другими словами, он возвращает совпадающие элементы двух массивов.

    Синтаксис:

    array array_intersect ( array $array1 , array $array2 [, array $... ] )  
    

    Пример:

    <?php      
            $name1=array("abc","pqr","xyz","mno");    
            $name2=array("def","abc","stu","xyz");    
            $name3=array_intersect($name1,$name2);  
            foreach( $name3 as $n )    
            {    
              echo "$n<br />";    
            }    
    ?>   
    
     
    Output:
    abc
    xyz