White cat - Справочник по PHP Страница 21

Тут можно читать бесплатно White cat - Справочник по PHP. Жанр: Компьютеры и Интернет / Прочая околокомпьтерная литература, год неизвестен. Так же Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте «WorldBooks (МирКниг)» или прочесть краткое содержание, предисловие (аннотацию), описание и ознакомиться с отзывами (комментариями) о произведении.
White cat - Справочник по PHP

White cat - Справочник по PHP краткое содержание

Прочтите описание перед тем, как прочитать онлайн книгу «White cat - Справочник по PHP» бесплатно полную версию:
Вниманию читателей предлагается справочник по PHP.Справочник предназначается для людей, уже освоивших азы программирования на языке PHP.Справочник создан на основе информации, предоставленной на сайте «Справочник Web-языков» www.spravkaweb.ru.

White cat - Справочник по PHP читать онлайн бесплатно

White cat - Справочник по PHP - читать книгу онлайн бесплатно, автор white cat

Замечание: SimpleXML содержит правило добавления итеративных свойств к большинству методов. Они не могут быть просмотрены с использованием var_dump() или каких-либо других средств анализа объектов.

Пример 1. Использование метода children()

<?php

$xml = simplexml_load_string(

'<sites>

<site name="spravkaweb.ru">

<site name="links.spravkaweb.ru" />

<site name="forum.spravkaweb.ru" />

<site name="server.spravkaweb.ru" />

</site>

<site name="yandex.ru">

<site name="money.yandex.ru" />

<site name="map.yandex.ru" />

<site name="market.yandex.ru" />

</site>

</sites>');

echo '<ul>';

foreach ($xml->children() as $site) {

echo '<dt>' . $site['name'];

foreach ($site->children() as $subsite) {

echo '<dd>' . $subsite['name'];

}

}

echo '</ul>';

?>

Данный пример выведет:

spravkaweb.ru links.spravkaweb.ru forum.spravkaweb.ru server.spravkaweb.ruyandex.ru money.yandex.ru map.yandex.ru market.yandex.ru

xpath

SimpleXMLElement-xpath

SimpleXMLElement-xpath -- Выполняет Xpath-запрос к XML-данным

Описание

array SimpleXMLElement->xpath ( string path )

Метод xpath ищет дочерние элементы элемента SimpleXML, путь к которому указан в параметре path. Метод возвращает массив объектов SimpleXMLElement.

Пример 1. Xpath

<?php

$string = <<<XML

<a>

<b>

<c>text</c>

<c>stuff</c>

</b>

<d>

<c>code</c>

<b>

<c>plain</c>

</b>

</d>

</a>

XML;

$xml = simplexml_load_string($string);

/* Поиск по <a><b><c> */

$result = $xml->xpath('/a/b/c');

foreach ($result as $node) {

echo '/a/b/c: ' . $node . '<BR>';

}

/* Относительные дорожки также работают ... */

$result = $xml->xpath('b/c');

foreach ($result as $node) {

echo 'b/c: ' . $node . '<BR>';

}

?>

Данный скрипт выведет:

/a/b/c: text/a/b/c: stuffb/c: textb/c: stuff

Два результата в данном случае одинаковы.

simplexml_import_dom

simplexml_import_dom

(PHP 5)

simplexml_import_dom -- Возвращает объект SimpleXMLElement, созданный из DOM-объекта.

Описание

SimpleXMLElement simplexml_import_dom ( DOMNode node [, string class_name] )

Данная функция берет объект DOM и создает на его основе объект SimpleXML. Этот новый объект может быть использован как нормальный объект SimpleXML. Если во время создания объекта произошли ошибки, метод вернет false.

Пример 1. Import DOM

<?php

$dom = new domDocument;

$dom->loadXML('<sites><site><url>spravkaweb.ru</url></site></sites>');

if (!$dom) {

echo 'Ошибка парсинга документа!';

exit;

}

$s = simplexml_import_dom($dom);

echo $s->site[0]->url; // spravkaweb.ru

?>

simplexml_load_file

simplexml_load_file

(PHP 5)

simplexml_load_file -- Интерпретирует XML-файл в объект

Описание

object simplexml_load_file ( string filename [, string class_name [, int options]] )

Эта функция интерпретирует файл filename с правильно сформированными XML-данными в объект SimpleXMLElement. Если в XML-данных имеются ошибки, функция возвратит FALSE.

Вы можете использовать необязательный параметр class_name в функции simplexml_load_file() для того, чтобы функция вернула объект указанного класса. При этом класс должен быть расширением класса SimpleXMLElement.

Начиная с PHP 5.1.0 и Libxml 2.6.0 вы можете использовать необязательный параметр options, спецификация которого описана в additional Libxml parameters.

Замечание: Libxml 2 преобразовывает URL к правильному виду. Т.е. если вы хотите присвоить переменной а значение b&c в URL-строке, вам не обязательно делать: simplexml_load_file(rawurlencode('http://example.com/?a=' . urlencode('b&c'))). Начиная с PHP 5.1.0 это делается в автоматическом режиме.

Пример 1. Интерпретация XML документа

<?php

// Файл test.xml содержит XML документ с корневым элементом

// и вложенным элементом title /[root]/title.

if (file_exists('test.xml')) {

$xml = simplexml_load_file('test.xml');

var_dump($xml);

} else {

exit('Ошибка открытия test.xml.');

}

?>

Этот пример выведет следующее:

SimpleXMLElement Object( [title] => Тестовый заголовок ...)

В данном примере вы можете обратиться к элементу title следующим образом: $xml-title.

Смотрите также:

simplexml_load_string()

simplexml_load_string

simplexml_load_string

(PHP 5)

simplexml_load_string -- Интерпретирует строку с XML в объект

Описание

object simplexml_load_string ( string data [, string class_name [, int options]] )

Эта функция берет "правильный" XML-документ, находящийся в строке data и возвращает объект класса SimpleXMLElement, имеющий свойства, равные содержимому xml-документа. Если XML-документ имеет ошибки, функция возвратит FALSE.

Вы можете использовать необязательный параметр class_name для того, чтобы функция simplexml_load_string() вернула объект заданного класса. Этот класс должен расширять класс SimpleXMLElement.

Начиная с PHP 5.1.0 и Libxml 2.6.0, вы можете также использовать необязательный параметр options, содержимое которого определено в additional Libxml parameters.

Пример 1. Преобразование XML-строки

<?php

$string = <<<XML

<?xml version='1.0'?>

<document>

<title>Forty What?</title>

<from>Joe</from>

<to>Jane</to>

<body>

I know that's the answer -- but what's the question?

</body>

</document>

XML;

$xml = simplexml_load_string($string);

var_dump($xml);

?>

Этот пример выведет:

SimpleXMLElement Object( [title] => Forty What? [from] => Joe [to] => Jane [body] => I know that's the answer -- but what's the question?)

В этом примере вы можете также использовать конструкции $xml-body и т.д.

Символические ссылки. Жесткие ссылки.

Немного теории

В системах Unix довольно часто возникает необходимость иметь для одного и того же файла или каталога разные имена. При этом одно из имен логично назвать основным, а все другие - его псевдонимами. В терминологии Unix такие псевдонимы называются символическими ссылками.

Символическая ссылка - это просто бинарный файл специального вида, который содержит ссылку на основной файл. При обращении к такому файлу (например, открытию его на чтение) система "соображает", к какому объекту на самом деле запрашивается доступ, и прозрачно его обеспечивает. Это означает, что мы можем использовать символические ссылки точно так же, как и обычные файлы. Однако иногда нужно бывает работать со ссылкой именно как со ссылкой, а не как с файлом. Для этого и существуют перечисленные ниже функции PHP.

Жесткие ссылки

Создание символической ссылки - не единственный способ задать для одного файла несколько имен. Главный недостаток символических ссылок - существование основного имени файла, на которое все и ссылаются. Попробуйте удалить этот файл - и вся "паутина" ссылок, если таковая имелась, развалиться на куски. Есть и другой недостаток: открытие файла, на который указывает ссылка, происходит несколько медленнее, т.к. системе нужно проанализировать содержимое ссылки и установить связь с "настоящим" файлом. Особенно это чувствуется, если одна ссылка указывает на другую, а та на третью и т.д. уровней на 10.

Жесткие ссылки позволяют вам иметь для одного файла несколько совершенно равноправных имен, причем доступ по ним осуществляется одинаково быстро. При этом, если одно из таких имен будет удалено, то сам файл удалиться только в том случае, если данное имя было последним, и других имен у файла нет.

Зарегистрировать новое имя у файла (то есть создать для него жесткую ссылку) можно с помощью функции link(). Ее синтаксис полностью идеентичен функции symlink(), да и работает она по тем же правилам, за исключением того, что создает не символическую, а жесткую ссылку.

readlink

Возвращает имя основного файла.

Синтаксис:

string readlink(string $linkname)

Возвращает имя основного файла, с которым связан его синоним $linkname. Это бывает полезно, если вы хотите узнать основное имя файла, чтобы, например, удалить сам файл, а не ссылку на него. В случае ошибки функция возвращает значение "ложь".

symlink

Создает символическую ссылку.

Синтаксис:

bool symlink(string $target, string $link)

Эта функция создает символическую ссылку с именем $link на объект (файл или каталог), заданную в $target. В случае "провала" функция возвращает false.

Перейти на страницу:
Вы автор?
Жалоба
Все книги на сайте размещаются его пользователями. Приносим свои глубочайшие извинения, если Ваша книга была опубликована без Вашего на то согласия.
Напишите нам, и мы в срочном порядке примем меры.
Комментарии / Отзывы
    Ничего не найдено.