Forum Webscript.Ru
Программирование => PHP => Тема начата: moroz68 от 17 Марта 2006, 11:53:27
-
Как средствами PHP подсчитать количество записей в XML по определенному значению т.е.
// Создать массив из XML
$books = readBookInfo();
// Общее количество записей
$total = sizeof($books)
Как найти количество книг по полю с определенным значением.
XML
Beginning Linux Programming Second Edition
Neil Matthew
1-861002-97-1
39.99
&book_1861002971;
... .....
... .....
.. .....
-
для работы с xml есть специальные функции (смотри ман) содержимое xml запихивается в массив, а там уже считаешь функциями для массивов
-
Вот нашел функцию для массива, но что-то не работает, пишит 0 найдено
count(array_keys($books, \'Neil Matthew\'));
count(array_keys($books[author], \'Neil Matthew\'));
XML
Beginning Linux Programming Second Edition
Neil Matthew
1-861002-97-1
39.99
&book_1861002971;
... .....
... .....
.. .....
-
moroz68
ты сначала должен принять содежимое хмл-фала, а затем специальными инструментами запихать в массив и потом уже лопатить массив...читай тут (http://webmastak.com/tech/103/)
-
и попробуй для начала разобраться в проблеме сам, а не гадать на кофейной гуще и бесполезно постить на форуме
-
Greg - какого черта ты лезешь, это ты плодишь чушь!!! Три сообщения от тебя, с нулевой информацией и битой ссылкой, остынь!
Массив у меня есть из XML
function readBookInfo() {
global $file, $books;
$xml_parser = xml_parser_create();
xml_set_element_handler($xml_parser, "startElement", "endElement");
xml_set_character_data_handler($xml_parser,"characterData");
xml_set_external_entity_ref_handler($xml_parser, "externalEntityHandler");
xml_parser_set_option($xml_parser, XML_OPTION_CASE_FOLDING, false);
if (!($fp = fopen($file, "r"))) {
die("Could not open $file for reading") ;
}
while (($data = fread($fp, 4096))) {
if (!xml_parse($xml_parser, $data, feof($fp))){
die(sprintf("XML error at line %d column %d",
xml_get_current_line_number($xml_parser),
xml_get_current_column_number($xml_parser)));
}
}
xml_parser_free($xml_parser);
return $books;
}
$books = readBookInfo();
-
moroz68:
Массив у меня есть из XML
сомневаюсь, можно взглянуть на содержимое массива ?