упорядочить/отсортировать массив

Тема в разделе "Решение различных задач по парсингу", создана пользователем Love-world, 21 апр 2014.

  1. Love-world

    Love-world Member Пользователи

    Регистрация:
    19 июл 2013
    Сообщения:
    102
    Приветствую всех участников форума, прежде всего хочу поздравить всех с праздником, Христос Воскрес!
    Имеется вопрос, есть массив данных через запятую, нужен php код который будет упорядочивать этот массив данных в алфавитном порядке, в массиве присутствуют русские и английские слова.
    Использую такой код
    PHP:
    <?
    header ("Content-Type: text/plain; charset=utf-8");

       
    $arr = array($_POST["data"]);
       
    sort($arr);
       
       echo 
    implode(','$arr);
        
    ?>
    но он не хочет работать в программе, т.е. когда я проверяю его на хостинге (вместо $_POST["data"] подставляю непосредственно массив) он все прекрасно сортирует, пытаюсь присоединить к Cd, он мне возвращает исходные данные.

    Плюс насколько я понимаю, каждое из слов массива должно быть заключено в '

    т.е. примерно во в таком виде

    'слово 1','слово 2','слово 3' и т.д.

    заключаю, перед обработкой предыдущим кодом, обрабатываю вот таким
    PHP:
    <?
    header ("Content-Type: text/plain; charset=utf-8");

    $text = ($_POST["data"]);

    $text str_replace(",","','",$text);
    $text preg_replace("/^/u","'",$text);
    $text preg_replace("/$/u","'",$text);

    echo 
    $text;
        
    ?>
    Подскажите что делаю не так.

    З.Ы. Камнями не кидайте ибо в php почти что дуб. )
     
  2. Kreol

    Kreol Модератор Команда форума Модератор

    Регистрация:
    6 янв 2013
    Сообщения:
    2.666
    Проект в студию
     
    Последнее редактирование: 21 апр 2014
  3. Love-world

    Love-world Member Пользователи

    Регистрация:
    19 июл 2013
    Сообщения:
    102
    Дык я вроде все описал, есть набор фраз
    слово1,слово2,слово3 - их нужно отсортировать по алфавиту
     
  4. kagorec

    kagorec Администратор Команда форума Администратор

    Регистрация:
    3 янв 2011
    Сообщения:
    4.433
    Адрес:
    Latvia
    При предосмотре смотрите лог, что скрипту отсылается от программы
    В скрипте своем проверьте на статичных данных сначало а потом уже от программы полученное советую обрабатывать когда наладили скрипт.
     
  5. Kreol

    Kreol Модератор Команда форума Модератор

    Регистрация:
    6 янв 2013
    Сообщения:
    2.666
    какую границу вы передаете в $_POST["data"]??
     
  6. Love-world

    Love-world Member Пользователи

    Регистрация:
    19 июл 2013
    Сообщения:
    102
    Именно так и делаю, при статичных данных все ок сортирует.
    Передаю getmorecontent, предпросмотр юзаю, передается именно то что нужно т.е. вот в таком виде:
    'Фраза1','Фраза2','Фраза3' и т.д.
     
  7. Kreol

    Kreol Модератор Команда форума Модератор

    Регистрация:
    6 янв 2013
    Сообщения:
    2.666
    Ну если Вы все так и делаете, то почему-то у меня все работает. Разбирайтесь.
    В шаблоне:
    Код:
    <PHP_SCRIPT=http://localhost/111.php>I_id=Romashka Privet Tam Jmg
    </PHP_SCRIPT>
    В скрипте:
    Код:
    <?php
    $str = $_POST['I_id'];
    $arr = explode(' ', $str);
    sort($arr);
    echo "Array[0]: ". $arr[0].'<br>';
    ?>
    Результат:
    Код:
    Array[0]: Jmg<br>
    Выведите массив до сортировки и увидите почему не работает.
     
    Последнее редактирование: 21 апр 2014
  8. kagorec

    kagorec Администратор Команда форума Администратор

    Регистрация:
    3 янв 2011
    Сообщения:
    4.433
    Адрес:
    Latvia
    тс порядка такого добивается)
     
  9. Love-world

    Love-world Member Пользователи

    Регистрация:
    19 июл 2013
    Сообщения:
    102
    Если честно, то мало что понял из вашего поста ), яж говорю дуб...

    вот что у меня в шаблоне
    Код:
    <PHP_SCRIPT_2=http://хопхейлалалей.ru/sort.php>data=<PHP_SCRIPT=http://хопхейлалалей.ru/kavichki.php>data=<GETMORECONTENT><URL="SELF"><START="<dt>Особенности:</dt>"><STARTCOUNT="0"><END="</dd>"><ENDCOUNT="0"><PARAMS="htmtotxt,tocsv"></GETMORECONTENT></PHP_SCRIPT></PHP_SCRIPT_2>
    вот что в kavichki.php
    Код:
    <?
    header ("Content-Type: text/plain; charset=utf-8");
    
    $text = ($_POST["data"]);
    
    $text = str_replace(",","','",$text);
    $text = preg_replace("/^/u","'",$text);
    $text = preg_replace("/$/u","'",$text);
    
    echo $text;
    	
    ?>
    вот в sort.php
    Код:
    <?
    header ("Content-Type: text/plain; charset=utf-8");
    
       $arr = array($_POST["data"]);
       sort($arr);
       
       echo implode(',', $arr);
    	
    ?>
    вот что к примеру уходит на обработку в kavichki.php
    Код:
    Rattrapante,Хронограф,Водонепроницаемые,Полный календарь,Светящийся,Светодиодный дисплей,Секундомер
    сразу же после этого на обработку уходит в sort.php вот что
    Код:
    'Rattrapante','Хронограф','Водонепроницаемые','Полный календарь','Светящийся','Светодиодный дисплей','Секундомер'
    насколько я понимаю для массива нужны эти символы '

    вот и все. Спасибо за ваши ответы.
     
  10. Kreol

    Kreol Модератор Команда форума Модератор

    Регистрация:
    6 янв 2013
    Сообщения:
    2.666
    Лень, движет прогрессом.
    В шаблоне
    Код:
    <PHP_SCRIPT=http://localhost/111.php>I_id=Romashka, Privet, Tam, Jmg, слово5, слово4, слово7
    </PHP_SCRIPT>
    В скрипте (Скрипт сохранять только в Notepad++, кодировка UTF-8)
    Код:
    <?php
    $string = $_POST['I_id'];
    //преобразоваем в массив
    $arr = explode(", ", $string);
    //сортируем
    sort($arr);
    //выводим для проверки
    /*echo '<pre>';
    print_r($arr);
    echo '</pre>'*/
    // выводим отсортированный
    echo implode (", ", $arr);
    ?>
    Выход
    Код:
    Jmg, Privet, Romashka, Tam, слово4, слово5, слово7 
    И если после этого, Вы опять скажете что не поняли, тогда закажите настройку тут Ссылки недоступны для гостей И с Вами индивидуально позанимаются.
    Я думаю, Вы сможете найти разницу между моим и вашим подходом.
    Спасибо!
     
  11. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Воу-воу, полегче...
    Спасибо!
     
    napserious нравится это.
  12. Love-world

    Love-world Member Пользователи

    Регистрация:
    19 июл 2013
    Сообщения:
    102
    Индивидуальные занятия еще со школы пугали ). Спасибо покумекал, заработало.
     
Similar Threads
  1. Jeka
    Ответов:
    3
    Просмотров:
    1.489
Загрузка...

Поделиться этой страницей