Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 1
Регистрация: 29.09.2014
Сообщений: 25

Сортировка вывода двух массивов

15.08.2016, 22:30. Показов 912. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть два ассоциативных массива
нужно вывести их в цикле, так что бы сортировались по дате:
PHP
1
2
3
4
5
//$arr1["date"] = "11.08.2016 13:00"; $arr2["date"] = "12.08.2016 12:00"; 
if($arr1["date"]>$arr2["date"]){
echo $arr1["text"];
}
else echo $arr2["text"];
пробовал так не получается, выводится только элементы 1 массива или только 2
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.08.2016, 22:30
Ответы с готовыми решениями:

Сортировка вывода из бд
Скажите пожалуйста, есть бд: в ней имеются пользователи и в полях указаны разделы (программит, юзер и т.п.) как мне вывести ВСЕХ...

Instantcms 1.x сортировка вывода тегов
public function searchByTag() { $sql = "SELECT * FROM cms_tags WHERE tag =...

Сортировка массивов
$result=file("путь к файлу"); $int=count($result); sort( $result ); foreach($result as $value) { echo '<div...

6
Фрилансер
Эксперт PythonЭксперт JSЭксперт PHP
 Аватар для Azdeman
1871 / 1362 / 604
Регистрация: 12.01.2011
Сообщений: 5,470
15.08.2016, 22:37
PHP
1
2
3
4
5
6
$arr1["date"] = strtotime("11.08.2016 13:00"); $arr2["date"] = strtotime("12.08.2016 12:00");
if($arr1['date'] > $arr2['date']){
   echo date("d.m.Y h:s",$arr1['date']);
}else{
   echo date("d.m.Y h:s",$arr2['date']);
        }
Или так
PHP
1
2
3
4
5
6
 $arr1["date"] = "11.08.2016 13:00"; $arr2["date"] = "12.08.2016 12:00";
        $map = array_map(function($v,$v1){
            if(strtotime($v)>strtotime($v1)) return $v;
            return $v1;
        },$arr1,$arr2);
    print_r($map);
0
0 / 0 / 1
Регистрация: 29.09.2014
Сообщений: 25
15.08.2016, 22:54  [ТС]
а как сделать чтоб выводились все элементы массива отсортированные по дате
0
Фрилансер
Эксперт PythonЭксперт JSЭксперт PHP
 Аватар для Azdeman
1871 / 1362 / 604
Регистрация: 12.01.2011
Сообщений: 5,470
15.08.2016, 23:00
PHP
1
2
3
4
5
6
7
8
9
10
$arr1["date"] = "11.08.2016 13:00"; $arr2["date"] = "12.08.2016 12:00";
$arr = [];    
array_map(function($v,$v1) use (&$arr){
        $arr[] = $v;
        $arr[] = $v1;
    uasort($arr,function($m,$v){
        return $v - $m;
});
},$arr1,$arr2);
print_r($arr);
0
0 / 0 / 1
Регистрация: 29.09.2014
Сообщений: 25
16.08.2016, 10:45  [ТС]
вот такие у меня массивы и нужно вывести оба в отсортированном виде по дате
пробовал все 3 варианта
PHP
1
$arr1
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Array
(
    [0] => Array
        (
            [id] => 21
            [message] => tyut
            [date] => 15.08.2016 12:54
        )
 
    [1] => Array
        (
            [id] => 11
            [message] => df
            [date] => 12.08.2016 14:14
        )
 
    [2] => Array
        (
            [id] => 4
            [message] => Привет
            [date] => 11.08.2016 12:59
        )
 
)
PHP
1
$arr2
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Array
(
    [0] => Array
        (
            [id] => 8
            [message] => af
            [date] => 11.08.2016 16:11
        )
 
    [1] => Array
        (
            [id] => 2
            [message] => hello
            [date] => 10.08.2016 15:22
        )
 
    [2] => Array
        (
            [id] => 7
            [message] => как ты
            [date] => 10.08.2016 15:02
        )
 
)
т.е. одно сообщение самое новое потом другое и так далее
0
Фрилансер
Эксперт PythonЭксперт JSЭксперт PHP
 Аватар для Azdeman
1871 / 1362 / 604
Регистрация: 12.01.2011
Сообщений: 5,470
16.08.2016, 14:21
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$arr = [
            ["id"=>21,"message"=>"tyut","date"=>"15.08.2016 12:54"],
            ["id"=>11,"message"=>"df","date"=>"12.08.2016 14:14"],
            ["id"=>4,"message"=>"message","date"=>"11.08.2016 12:59"],
       ];
$arr2 = [
            ["id"=>21,"message"=>"tyut","date"=>"15.08.2016 12:54"],
            ["id"=>11,"message"=>"df","date"=>"18.08.2016 14:14"],
            ["id"=>4,"message"=>"message","date"=>"11.08.2016 12:59"],
        ];
$arr = array_merge($arr,$arr2);
uasort($arr,function($m,$m1){
   return $m1["date"] - $m["date"];
});
print_r($arr);
Или каждый массив по отдельности
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
$arr = [
            ["id"=>21,"message"=>"tyut","date"=>"15.08.2016 12:54"],
            ["id"=>11,"message"=>"df","date"=>"12.08.2016 14:14"],
            ["id"=>4,"message"=>"message","date"=>"11.08.2016 12:59"],
       ];
$arr2 = [
            ["id"=>21,"message"=>"tyut","date"=>"15.08.2016 12:54"],
            ["id"=>11,"message"=>"df","date"=>"18.08.2016 14:14"],
            ["id"=>4,"message"=>"message","date"=>"11.08.2016 12:59"],
        ];
 
//или каждый массив
 
 
//$arr = array_merge($arr,$arr2); 
uasort($arr,function($m,$m1){
   return $m1["date"] - $m["date"];
});
print_r($arr);
 
uasort($arr2,function($m,$m1){
   return $m1["date"] - $m["date"];
});
print_r($arr2);
?>
0
0 / 0 / 1
Регистрация: 29.09.2014
Сообщений: 25
16.08.2016, 15:00  [ТС]
Не совсем так, массивы сами уже отсортированы по дате, нужно вывести оба массива
как диалог, один входящие сообщения другой исходящие
объединить в один массив и отсортировать не подойдет не подойдет

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
16.08.2016, 15:00
Помогаю со студенческими работами здесь

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

Сортировка нескольких массивов
В цикле создается несколько массивов. for ($i=0; $i<16; $i++) { .... $c1 = 121; $c2 = 2323; $c3 = dfa; $c4 = rtt34;

Объединение двух массивов
Есть массив $file_images и $complects. $i = количеству в $complects. Как мне объединить массивы $complects->images = $file_images ...

Сравнение двух массивов
есть два массива: $irregular_verbs_second = array(0 => 'was', 1 => 'beat',); $r = array(0 => 'was', 1 => 'book'); нужно сделать...

Объединение двух массивов
Допустим есть два массива users и seasons. В массиве users значения id_users пользователя уникально, а в массиве seasons значения...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru