Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Сортировка массива.

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Подскажите как отсортировать массив.
Исильдур
Отправлено: 30 Августа, 2012 - 20:35:28
Post Id


Гость


Покинул форум
Сообщений всего: 68
Дата рег-ции: Март 2012  


Помог: 1 раз(а)




Всем добрый вечер!
У меня такая проблема, не получается отсортировать массив в обратном порядке.
Записываю данные в файл:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. $filename = "message.txt";
  3. $fd = fopen("message.txt", "a");
  4. if(!$fd) die('Невозможно открыть файл на запись!');
  5. fwrite($fd, $_POST['name']."|");
  6. fwrite($fd, $_POST['message']."\n");
  7. fclose($fd);
  8.  


После этого пытаюсь получить из файла массив,
Получаю, вывожу все работает,
Но если его отсортировать, например функцией rsort(),
То, ничего не выводит.
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2.  $messages = file($filename);
  3.  $messages = rsort($messages);
  4. print_r($messages); // Выводит просто цифру 1, а если сортировку убрать то выведет весь массив
  5. полностью...

Подскажите пожалуйста в чем дело.
 
 Top
snikers987
Отправлено: 30 Августа, 2012 - 20:43:50
Post Id



Участник


Покинул форум
Сообщений всего: 1239
Дата рег-ции: Сент. 2011  
Откуда: Крым


Помог: 25 раз(а)




Исильдур пишет:

CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2.  $messages = file($filename);
  3.  $messages = rsort($messages);
  4. print_r($messages); // Выводит просто цифру 1, а если сортировку убрать то выведет весь массив
  5. полностью...

Подскажите пожалуйста в чем дело.

Потому что функция rsort() возвращает bool, а первый аргумент передается по ссылке

PHP:
скопировать код в буфер обмена
  1.  
  2. $messages = file($filename);
  3. rsort($messages);
  4. print_r($messages);
  5.  

(Отредактировано автором: 30 Августа, 2012 - 20:45:23)



-----
Когда всматриваешься в тёмную бездну, учти, что кто-то может смотреть на тебя из неё...
 
My status
 Top
Исильдур
Отправлено: 30 Августа, 2012 - 21:12:08
Post Id


Гость


Покинул форум
Сообщений всего: 68
Дата рег-ции: Март 2012  


Помог: 1 раз(а)




snikers987, Работает!
Жаль + поставить не могу
Но все равно спасибо!
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB