@m4tveevoleg

Как рассортировать массив по другим массивам?

Массив вида:
array(5) { 
  ["cfdb7_status"]=> string(6) "unread" 
  ["your-message"]=> string(6) "фыв" // Сообщений может быть неограниченное количество
  ["text-46"]=> string(6) "фыв" 
  ["file-154cfdb7_file"]=> string(32) "1548147568-531181-1517317512.jpg" // файлов может быть неограниченное количество
  ["file-997cfdb7_file"]=> string(35) "1548147568-vdytakxbauf0qd1pmkrz.jpg" 
}


Задача стоит рассортировать массив на два массива:
-Сообщения
-Картинки
Заранее благодарю)
  • Вопрос задан
  • 61 просмотр
Решения вопроса 1
seganim
@seganim
PHP-программист, программный инженер
У файлов признак виден, ключ содержит _file или слово file, а у сообщений? Для текущей структуры your-message какой второй ключ, если их 2? А вообще такой же признак - message в ключе.

Берем массив как пара ключ-значение, проверяем содержится ли признак в ключе и формируем.


$msg=array();
$img=array();
foreach ($mass as $key->$value){
if (!strpos($key, 'file')===false) {
$img[]=$value;
}
if (!strpos($key, 'message')===false) {
$msg[]=$value;
}
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы