Урок 16. Работа с массивами в PHP

Урок 16. Работа с массивами в PHP

Создание и раскрутка сайтов

Вбиваю в ТОП-10, как гвозди

8-965-148-98-02, diplom07@mail.ru

Создание и раскрутка сайтов

Вбиваю в ТОП-10, как гвозди

8-965-148-98-02, diplom07@mail.ru

Урок 16. Работа с массивами в PHP

Урок 16. Работа с массивами в PHP

www.homa.xp3.biz

Теория

Заполнение массивов

Заполнить массив 8 'x':

<?$a=[];for($i=0;$i<8;i=i++){$a[]='x';}var_dump($a)//Выведет ['x','x','x','x','x','x','x','x']?>

Заполнить массив числами от 1 до 8:

<?$a=[];for($i=1;$i<=8;i++){$a[]=$i;}var_dump($a)//Выведет [1,2,3,4,5,6,7,8]?>

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

Поменять ключи и значения в ассоциативный массиве, например, из ['a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5] сделать [1=>'a',2=>'b',3=>'c',4=>'d',5=>'e'].

Перебор циклом foreach исходный массив и создать при этом новый ассоциативный массив r. Ключами нового массива сделать элементы старого, а значениями нового массива - ключи старого:

<?$a=['a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5];$r=[];foreach($a as$k=>$e){$r[$e]=$k;}var_dump($r)//Выведет [1=>'a', 2=>'b', 3=>'c', 4=>'d', 5=>'e']?>

array(5) { [1]=> string(1) "a" [2]=> string(1) "b" [3]=> string(1) "c" [4]=> string(1) "d" [5]=> string(1) "e" }

Подсчет количества элементов

Дан массив ['a','b','c','a','a','b']. Подсчитать количество одинаковых элементов в этом массиве и сделать результат в виде массива ['a'=>3,'b'=>2,'c'=>1].

Для решения сделать массив c с начальным значением ['a'=>0,'b'=>0,'c'=>0]. Перебирать массив циклом и увеличивать соответствующее значение в объекте c. К примеру, если текущий элемент массива - 'a', то увеличить c['a'] на 1 (c['a']++). Только вместо 'a' подставлятся текущий элемент массива (c[$e]++):

<?$a=['a','b','c','a','a','b'];$c=['a'=>0,'b'=>0,'c'=>0];foreach($ as$e){$c[$e]++;}var_dump($c)//Выведет ['a'=>3,'b'=>2,'c'=>1]?>

То, что массив c имеет изначальное значение ['a'=>0,'b'=>0,'c'=>0], неудобно, т.к. обычно неизвестно, какие элементы есть в массиве.

Пусть массив c формируется автоматически так: если такого элемента в c нет, то ему следует присвоить значение 1, а если есть, увеличить значение на 1:

<?$a=['a','b','c','a','a','b'];$c=[];foreach($a as$e){if(!isset($c[$e])){$c[$e]=1;}else{$c[$e]++;}}var_dump($c)//Выведет ['a'=>3,'b'=>2,'c'=>1]?>

array(3) { ["a"]=> int(3) ["b"]=> int(2) ["c"]=> int(1) }

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

Из массива ['a','b','c','d','e'] сделать ['e','d','c','b','a']. Для этого перебирается исходный массив с конца и его элементы записываются в новый массив (они будут идти в обратном порядке):

<?$a=['a','b','c','d','e'];$r=[];for($i=$a.length-1;$i>=0;i--){$r[]=$e;}var_dump($r)//Выведет ['e','d','c','b','a']?>

Перебор многомерных массивов

Дан 2-мерный массив: $a=[[1,2,3],[4,5],[6]]

Вывести все его элементы. Для этого запустить 2 вложенных друг в друга цикла:

<?$a=[[1,2,3],[4,5],[6]];foreach($a as$e){foreach($e as$s){echo$s;}}?>

123456

Отвечу на любые вопросы. С уважением, Дмитрий Владимирович:
8-965-148-98-02, diplom07@mail.ru.
Печатать страницу: Урок 16. Работа с массивами в PHP

Урок 16, Работа с массивами в PHP, Урок, 16, Работа, с, массивами, в, PHP, создание, сайта, веб, заказ, web, дизайн, раскрутка, продвижение, новый, сайт, рейтинг, сео, seo, Создание сайтов, web-программирование, seo-продвижение, создание и раскрутка сайтов, вбиваю в топ-10, как гвозди, попробуйте бесплатно, Создание сайтов, web-программирование, seo-продвижение, Урок, 16, Работа, с, массивами, в, PHP, создание, сайта, веб, заказ, web, дизайн, раскрутка, продвижение, новый, сайт, рейтинг, сео, seo, создание, сайта, веб, заказ, web, дизайн, раскрутка, продвижение, новый, сайт, рейтинг, сео, seo, раскрутка сайтов, Вбиваю в ТОП-10, как гвозди, раскрутка сайтов, Делаю и раскручиваю сайты, Дмитрий Владимирович

×

Ваше письмо