Модераторы: Aliance, skyboy, MoLeX, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Сериализуемые масссивы в PHP, необходимо преобразовать (парсировать) ф 
:(
    Опции темы
zone51
  Дата 10.3.2006, 19:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 370
Регистрация: 17.2.2006

Репутация: нет
Всего: 1



Господа, така проблема, нада короче файлик с вопросами перевести из массива в человеческое состояние пригодное для печати. Как это сделать? Известно что файлик этот представлен в виде сериализуемых массивов PHP. Помогите пожалуста.

пример тут

http://slil.ru/22607624

Заранее спасибо.
smile


--------------------
The truth is out there
PM MAIL   Вверх
-=Ustas=-
Дата 11.3.2006, 10:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ustix IT Group
****


Профиль
Группа: Участник Клуба
Сообщений: 2222
Регистрация: 21.1.2005
Где: Краснодар

Репутация: 6
Всего: 69



zone51, слушай, ну а в чем собсна дело? Не знаешь про функцию unseriallize() ?
Код

...
// Получаем контент файла в одну строку
...
$array = unserialize($content);
echo "<pre>';
print_r($array);
echo "</pre>";

Смотри структуру массива и записывай затем так как тебе нужно.


--------------------
В искаженном мире все догмы одинаково произвольны, включая догму о произвольности догм.
-----
PM WWW ICQ Skype   Вверх
zone51
Дата 11.3.2006, 15:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 370
Регистрация: 17.2.2006

Репутация: нет
Всего: 1



В общем сделал так:

Цитата

<?php

$str=file_get_contents('1');
echo "<pre>";
$arr=unserialize($str);
print_r($arr);
echo "</pre>";

?>



Получил это:

Цитата


Array
(
    [count] => 4
    [description] => тема1
    [questions] => Array
        (
            [0] => Array
                (
                    [quest] => вопрос 1
                    [ans] => Array
                        (
                            [0] => ответ 1
                            [1] => ответ 2
                            [2] => ответ 3
                            [3] => ответ 4
                        )

                    [code] => -1158765518
                    [imagewidth] => 0
                )

            [1] => Array
                (
                    [quest] => вопрос 2
                    [ans] => Array
                        (
                            [0] => 0
                            [1] => 1
                            [2] => 2
                            [3] => 3
                        )

                    [code] => -186917087
                    [imagewidth] => 0
                )

            [2] => Array
                (
                    [quest] => вопрос 3
                    [ans] => Array
                        (
                            [0] => 1
                            [1] => 2
                            [2] => 3
                            [3] => 4
                        )

                    [code] => 1294909896
                    [imagewidth] => 0
              )


        )

)



А теперь вопрос как парсировать этот файл чтобы можно было отдельно получить значения всех полей, чтобы можно было это нормально читать? В таком формате:

Цитата


Вопрос №....
Варианты....
Ответ...









Это сообщение отредактировал(а) zone51 - 11.3.2006, 16:46


--------------------
The truth is out there
PM MAIL   Вверх
-=Ustas=-
Дата 12.3.2006, 03:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ustix IT Group
****


Профиль
Группа: Участник Клуба
Сообщений: 2222
Регистрация: 21.1.2005
Где: Краснодар

Репутация: 6
Всего: 69



zone51, блин, ну у тебя же уже готовый массив на лицо, что ты там еще парсить собрался!? Разбирай массив и пихай его на вывод.


--------------------
В искаженном мире все догмы одинаково произвольны, включая догму о произвольности догм.
-----
PM WWW ICQ Skype   Вверх
zone51
Дата 12.3.2006, 11:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 370
Регистрация: 17.2.2006

Репутация: нет
Всего: 1



всем пасибо все получилось! smile от оно:

Цитата

<?php

$file=fopen('out.txt','w');
$count=0;

if ($dir = @opendir('C:/shttps/www/src')) {

while (($fil = readdir($dir)) !== false) {
 
$str=file_get_contents("C:/shttps/www/src/$fil");

$arr=unserialize($str);
$count_ans=$arr['count'];
$count+=$count_ans;

  for($i=0;$i<$count_ans;$i++){
  $tmp=$arr['questions'][$i]['quest'];
  fwrite($file,"$tmp\n");
  fwrite($file,"--------------------------------------\n");

  $cod=$arr['questions'][$i]['code'];

  for($j=0;$j<4;$j++){
    $tmp2=$arr['questions'][$i]['ans'][$j];
    $res=crc32($tmp2);
    if($res==$cod)fwrite($file,"$tmp2-Правильно\n");
    else fwrite($file,"$tmp2\n");
  }

  fwrite($file,"--------------------------------------\n\n\n\n");

  }
}
closedir($dir);
}
fclose($file);
echo $count;

?>




--------------------
The truth is out there
PM MAIL   Вверх
-=Ustas=-
Дата 12.3.2006, 14:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ustix IT Group
****


Профиль
Группа: Участник Клуба
Сообщений: 2222
Регистрация: 21.1.2005
Где: Краснодар

Репутация: 6
Всего: 69



zone51, ну вот видишь!!! А ты боялся... smile


--------------------
В искаженном мире все догмы одинаково произвольны, включая догму о произвольности догм.
-----
PM WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Тексты | Следующая тема »


 




[ Время генерации скрипта: 0.0791 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.