Интерфейс запуска php через коммандную строку, сокращённо - CLI , позволяет обращаться к конкретному скрипту как к обычной программе.
C:\Program Files\EasyPHP 2.0b1\php5>php.exe -f "C:\Program Files\EasyPHP 2.0b1\w ww\index.php" index main hello world!
Однако будьте готовы к тому, что может не работать mysql_connect например, ввиду того что cli интерпретатор скомпилирован отдельно и вам понадобится подгрузка модуля отдельно
Resource Description Framework это формат описания данных сайта. Web 3.0 нацелен полностью на отрытость сайтов, а что такое сайт, как не база данных и удобная оболочка для их показа? Прикрывшись названием "семантики" таким образом ширится движение за открытые стандарты и информацию в виде моды. Конечно же это даёт большие возможности по анализу тех или иных данных на уровне смысла.
На самом деле задача RDF решалась уже давно в создании естественных языков (но под влиянием истории и культуры) и в языках программирования (под влиянием ограничений длины кода и понимания программистом). Однако до сих пор существуют проблемы понимания.
Сравнение RDF и естественных языков
RDF
Русский язык
:Earth :revolvesAround :TheSun
Земля крутится вокруг Солнца
:Automobile rdfs:subClassOf :Vehicle
Автомобиль - транспортное средство
Данные
База данных как известно строится на множествах (таблицах), где каждый элемент этого множества (ряд), имеет свойство (колонку). Множества взаимосвязаны между собой отношениями множественности (1:n или 1:1 или проч.).
Проблема в том что БД закрытые и извлечение данных, поиск проходит только через оболочку сайта, или через дополнительные интерфейсы RSS, SOAP. Если выложить данные в открытый доступ, или хотя-бы часть данных, то это даст возможность более свободно ими оперировать данными из других сайтов, создание mashup-сайтов, использующих чужие сервисы ускорится. В качестве доступа к такой виртуальной БД сайта существует стандарт SPARQL.
Семантика
RDF идёт дальше чем просто хранилище, он описывает взаимосвязь между элементами множеств, т.е. имеет семантику (подлежащее, сказуемое и дополнение). В качестве формата на данный момент существует визуальное представление, N3 формат и XML-формат.
Семантика - обязательно присуща человеческому языку, естественно что в искуственных языках человек тоже пытается внедрить её для большего понимания.
Структура N3-записи
RDF
Русский язык
OOP
N1
Подлежащее
Переменная или класс (Variable/Class)
N2
Сказуемое
Функция (Function/Class extension)
N3
Дополнение
Значение переменной или функции
Децентрализованность
В RDF ко всему можно приписать URI, что в свою очередь даёт возможность узнать об элементе побольше (а-ля href)
Так вот RDF показывает любому посетителю некое подобие базы данных и их связи между собой. Отличия и особенности:
Таблицы, ряды.. всё доступно не по SQL, а из обычного текстового файла. Который разумеется надо программам-агентам парсить.
Формат файла может быть в XML, N3..
Минусы
Несмотря на кажущуюся инновацию, разработчики web-сайтов не спешат внедрять rdf (я уж не говорю про owl). Почему?
Нет общей объединяющей силы типа Google, поддержка которой стимулировала бы прирост аудитории
Обычный пользователь не станет создавать rdf формат своей статьи вручную.
Наивная открытость того же FOAF может спокойно привести к тому, что данные тысяч людей будут использоваться спамерами.
XML создан для многих целей, одна из которых - удобство в переносимости данных из одной программы в другую. Особенно удобно создавать parser на этой основе. После простейшего парсинга, структура xml становится некоторым множеством переменных (массивом или объектом), а данные xml - значением этих переменных.
Увы для полноценного универсального xml парсера нужен большой и сложный объект, где обязательна присутсвовать рекурсия что-бы стало доступно всё богатсво этого стандарта.
Но для простейших файлов можно воспользоваться такой функцией..
/** * Simple xml parsing function * doesnt understand selfending tags like * * @param string $text * @return array */ function xml2array($text) { $reg_exp = '/<(.*?)>(.*?)/'; preg_match_all($reg_exp, $text, $match);
Не забывайте правда и о том, что рекурсия вызывает нехилую нагрузку на память и xml-файл в 400 кб может спокойно разрастись и перейти лимит в 10 мб, отведённый по умолчанию под php-процесс.
RSS это чистое содержание сайта, завёрнутое в стандартном XML формате
RSS позволяет
облегчить чтение сайта благодаря тому что дизайн сайта никоим образом не мешает и не запутывает
читать несколько сайтов одновременно, благодаря тому что данные можно собирать и смешивать как угодно в rss-читалке типа Sage , которая в последнее время интегрирована в браузер
Структуру RSS можно найти на любом продвинутом сайте. Соединить вывод новостей со структурой - простое дело для программиста. Проверить корректность структуры можно feedvalidator -ом
Кроме того в стандартных блогах возможно использовать уже существующие плагины и вести статистику ко всему прочему.. Например от feedburner .
Хотя rss и отличная web 2 технология, не стоит ставить сотню иконок, символизирующих продвинутость и возможности чтения в rss всей ленты или тематической ленты новостей. Достаточно добавить в head вашего сайта тэгlink rel="alternate" type="application/rdf+xml" title="RSS feed" href="/pathto/rss" /
SMS или short message system разрабатывалась еще в восьмидесятых, но реально пришла на смену пейджерам с появлением мобильных телефонов.
В настоящее время SMS широко используется при:
оплате некоей услуги с таким же принципом как и платный звонок - договор создаётся между предоставляющим услугу лицом и телефонным оператором, а клиент платит обоим
оповещении об выставленном счёте, о принятой оплате счёта или ином срочном и коротком оповещении
общении из-за границы благодаря более дешёвому тарифу
передаче точных данных, цифр, кодов
Я приведу пример как первые два пункта реализуются. Система состоит из трёх лиц. Клиент, SMS-gateway, наша инфосистема. SMS-gateway - посредник между провайдером телекоммуникационных услуг и internet-систем.
В качестве реальных прибалтийских провайдеров есть - mobi и fortumo.
Стандартная операция происходит таким образом:
Проводится кампания типа "Отправь сообщение на короткий номер 1311 со словом keyword чтобы принять участие в розыгрыше супер-приза - канцелярского карандаша с твёрдостью B!"
Сообщение получает SMS-gateway и находит кто связан с ключевым словом keyword
Выделенный сервер SMS-gateway вызывает по http URL нашей инфосистемы, который мы заранее договорились использовать. Кроме того в URL передаются GET параметры типа phonenumber, message.
Наш скрипт обрабатывает эти данные и при необходимости ответа на SMS - отвечает в XML виде . Для того что-бы никто не вбил вручную данные в скрипт - ставится ограничение на IP.
Следует обратить однако внимание, что при таком Use-case речь идёт об инициативе со стороны клиента. Рассылки же со стороны нашей инфосистемы надо решать с немного иными подходами.