Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
60 / 55 / 20
Регистрация: 01.04.2013
Сообщений: 551
1

Работа с XML тв программа

27.05.2015, 20:14. Показов 813. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Написал вот такой скрипт.
PHP
1
2
3
4
5
6
7
<?php
$tv = simplexml_load_file ("tv.xml");
echo 'Сейчас:'. date('YmdHis');
 
echo "<pre>";
print_r ($tv);
echo "</pre>";
Вывел вот такое.

Код
 [programme] => Array
        (
         [61] => SimpleXMLElement Object
                (
                    [@attributes] => Array
                        (
                            [start] => 20150527200000
                            [stop] => 20150527203000
                            [channel] => 16
                        )

                    [title] => Т/с "СашаТаня" (63 с.)
                    [category] => Сериалы - Другой
                )
  
            [62] => SimpleXMLElement Object
                (
                    [@attributes] => Array
                        (
                            [start] => 20150527203000
                            [stop] => 20150527210000
                            [channel] => 16
                        )

                    [title] => Т/с "Интерны" (236 с.)
                    [category] => Сериалы - Комедия
                )

            [63] => SimpleXMLElement Object
                (
                    [@attributes] => Array
                        (
                            [start] => 20150527210000
                            [stop] => 20150527220000
                            [channel] => 16
                        )

                    [title] => Comedy Club
                    [category] => Развлечения - Юмор
                )
 }
Где написано старт то это дата и время когда будет передача идти.
20150527210000
2015 год 05 месяц 27 день 21 час 00 минут 00 сек
Я написал дату в томже формате.
PHP
1
echo 'Сейчас:'. date('YmdHis');
Вот мне нужно найти в XML то что идёт сейчас по времени, как лучше сделать ?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.05.2015, 20:14
Ответы с готовыми решениями:

Работа с XML через System.Xml
День добрый! Подскажите пожалуйста как решить такую проблему. Есть XML документ следующего...

Работа с XML
Делаю приложение для учета документов вид базы XML. Не могу реализовать выгрузку определенных...

Работа с xml
Здравствуйте, так как начал только разбирать вопрос, для эффективности решил спросить у бывалых, у...

Работа с XML C/C++
Всем привет, нужно извлеч определенную информацию из XML документа, который находится в строке....

5
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
27.05.2015, 20:21 2
Цитата Сообщение от lookmy Посмотреть сообщение
как лучше сделать ?
Сравнивать Unix timestamp. Это количество секунд, прошедшее с 1970 года.
Воспользоваться классом встроенным в php DateTime http://php.net/manual/ru/class.datetime.php

Метод createFromFormat() позволяет получить экземпляр класса DateTime из любого формата входной строки.
0
60 / 55 / 20
Регистрация: 01.04.2013
Сообщений: 551
27.05.2015, 20:27  [ТС] 3
pav1uxa,
Вы хоть вопрос прочитайте, время уже сделано !!! Так как уже XML идёт со своим временем !!! Где старт и стоп. А вы мне предлагаете UNIX тайм выставить.
Мне нужно в XML найти время, сравнить и вывести что сейчас идёт по времени.
0
Заблокирован
27.05.2015, 20:38 4
Ты не умничай а приведи время к UNIX формату в своём XML тогда ты легко найдёшь то что идёт сейчас
0
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
27.05.2015, 21:18 5
Цитата Сообщение от lookmy Посмотреть сообщение
Вы хоть вопрос прочитайте,
Прочитал, Вы хоть ответ прочитайте.
Цитата Сообщение от lookmy Посмотреть сообщение
Мне нужно в XML найти время, сравнить и вывести что сейчас идёт по времени.
Я описал как это сделать.

Добавлено через 6 минут
Ладно, слишком тяжело наверное выразился:
PHP
1
2
3
4
5
6
7
8
9
10
<?php
$date = DateTime::createFromFormat('YmdHis', date('YmdHis'));
foreach ($tv as $v)
{
    if ($date >= DateTime::createFromFormat('YmdHis', $v->attributes->start) &&
        $date <= DateTime::createFromFormat('YmdHis', $v->attributes->stop))
    {
        echo "Сейчас идет ".$v->title."<br>";
    }
}
1
60 / 55 / 20
Регистрация: 01.04.2013
Сообщений: 551
27.05.2015, 21:50  [ТС] 6
Цитата Сообщение от Trukl Посмотреть сообщение
Ты не умничай а приведи время к UNIX формату в своём XML тогда ты легко найдёшь то что идёт сейчас
Ага мне заняться нечем !! Время в UNIX переводит, это как купить ладу калину из нее сделать спортивную машину.
P.S Умник фигоф.

Добавлено через 8 минут
Переделал, сделал вот так.
PHP
1
2
3
4
5
6
7
8
9
$date = date('YmdHis');
 
foreach ($tv as $v)
{
    if ($date >= $v->attributes()->start && $date <= $v->attributes()->stop )
    {
        echo "Сейчас идет :".$v->title."<br>";
    }
}
0
27.05.2015, 21:50
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.05.2015, 21:50
Помогаю со студенческими работами здесь

Работа с XML
Есть условие задачи. Task Корректный XML файл results.xml содержит результаты прохождения...

работа с XML
Здравствуйте. иемеется такой код&lt;?xml version=&quot;1.0&quot; encoding=&quot;windows-1251&quot; ?&gt; &lt;ValCurs...

работа с XML
почему то при попытке сохранения фаила, сам фаил вроде норм сохраняется, но выводится ссобщение...

Работа с XML
Привет всем. Мне надо сделать програмку, короторая сможет распарсить XML и занести данные например...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru