1. Главная
  2. Блог
  3. Полезные статьи
  4. Изменение порядка элементов в массиве

Изменение порядка элементов в массиве

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

array.jpg

Для этого необходимо найти файл php содержащий массив и внести в него изменения.


$myArray = array('one' => $myArray['one']) + $myArray;
// or      ['one' => $myArray['one']] + $myArray;

выше приведен, пример когда из имеющегося ассоциативного массива нужный элемент с ключами добавляется  в отдельный массив и складывается с исходным массивом. Оператор + в данном случае добавляет правый массив к левому. Когда элементы существуют в обоих массивах элементы из левого массива добавляются в объединенный массив, а элементы из правого массива игнорируются. Т.е. если в левом массиве мы разместили требуемый элемент, то в объединенном массиве он попадет на первое место и не будет продублирован.

В своем php файле мы находим код, формирующий массив:


		// Array tabs title
		$tab_titles = ylp_get_list_tab_title($query_types, $categories, $tags);
		if(empty($tab_titles)){ return;}
		if ($query_types == 'category'){
			if( !empty($categories) ){
				$tabs = explode(',', $categories);
			}else{
				$tabs = ylp_get_cats();
			}
		}else if($query_types == 'tags'){
			if( !empty($tags) ){
				$tabs = explode(',', $tags);
			}else{
				$tabs = ylp_get_tags();
			}
		}

Ниже добавляем код для вывода всего массива на странице сайта:


print "<pre>"; 
print_r($tab_titles);
print "</pre>";

Перезагружаем страницу, копируем нужный элемент с ключами из выведенного ассоциативного массива


...
    [rekomendovano-proizvoditelem] => Array
        (
            [name] => rekomendovano-proizvoditelem
            [title] => Рекомендовано производителем
            [short_title] => Рекомендовано производителем
        )
...

Комментируем или удаляем код для вывода всего массива на странице и вместо него размещаем код


		//меняем порядок массива
		
		$tab_titles = Array (
    'rekomendovano-proizvoditelem' => Array
        (
            'name' => 'rekomendovano-proizvoditelem',
            'title' => 'Рекомендовано производителем',
            'short_title'=> 'Рекомендовано производителем',
        )) + $tab_titles;

Задача решена. Один из элементов ассоциативного массива всегда будет выводиться первым.


Понравилась статья?

Поддержать нас рублями:

Нужна помощь? Обращайтесь!

Комментарии
Name
Email
Phone
Ваше имя
Ваш email
Оставить комментарий
Нажмите для звонка
Хотите заказать сайт?
Обращайтесь любым удобным способом и мы поможем подобрать интересный вариант для Вас!