RU/xmlNodeGetChildren
Jump to navigation
Jump to search
Возвращает все аттрибуты выбранного XML узла.
Синтаксис
Эта функция возвращает всех потомков XML узла.
Синтаксис
table/xmlnode xmlNodeGetChildren ( xmlnode parent, [ int index ] )
Синтаксис ООП Помогите! Я не понимаю, что это!
- Метод: xmlnode:getChildren(...)
- Переменная: .children
Обязательные параметры
- parent: XML узел из которого получаем потомков.
Не обязательные параметры
- index: Если вы хотите получить одного потомка, введите его индекс(порядковый номер, счет от 0). Т.е. что-бы получить первого потомка, пишите 0, что-бы получить третьего потомка пишите 2, и т.д.
Возвращает
Если index не указан, возвращает таблицу со всеми потомками. Если index указан, возвращает соответствующего по счету потомка. Если узлов не найдено, возвращает пустую таблицу. В случае неправильного регистра, возвращает false.
Пример
Click to collapse [-]
ServerПредположим вы создали .xml файл со случайными приветственными сообщениями:
<messages> <message>Добро пожаловать на ДМ сервер, наслаждайтесь пребыванием здесь.</message> <message>Добро пожаловать. Будьте уверены вы получите бесплатную пиццу от Мэтта!</message> <message>Вечеринка на пляже ЛС, будьте там</message> </messages>
Для того что-бы показать случайное сообщение из списка, входящим пользователям, используйте код:
addEventHandler("onResourceStart", getResourceRootElement(), function() local xml = xmlLoadFile("welcome.xml") -- открываем XML файл local messageNodes = xmlNodeGetChildren(xml) -- получаем всех потомков корневого узла(<messages>) g_WelcomeMessages = {} -- создаем новую глобальную переменную, для хранения сообщений в ней for i,node in ipairs(messageNodes) do -- пробегаем все узлы сообщений g_WelcomeMessages[i] = xmlNodeGetValue(node) -- получаем текст из узла end xmlUnloadFile(xml) -- закрываем XML файл end ) addEventHandler("onPlayerJoin", getRootElement(), function() local numMessages = #g_WelcomeMessages -- получаем количество сообщений local message = g_WelcomeMessages[math.random(numMessages)] -- выбираем случайное сообщение outputChatBox(message, source, 0, 255, 0) -- выводит сообщение зашедшему игроки end )
Смотрите также
Серверные функции
Клиентские функции
Общие функции
- xmlCopyFile - копирует всё содержимое определённого узла в XML-документе в новый файл документа
- xmlCreateChild - создаёт новый дочерний узел в узле XML
- xmlCreateFile - создаёт новый XML-документ, который впоследствии можно сохранить в файл с помощью xmlSaveFile
- xmlDestroyNode - удаляет узел XML из дерева узлов XML
- xmlFindChild - возвращает именованный дочерний узел узла XML
- xmlLoadFile - загружает XML-файл и возвращает узел, указав конкретный путь к файлу
- xmlLoadString - создаёт XML узел из строкового ввода
- xmlNodeGetAttribute - возвращает атрибут узла в файле конфигурации
- xmlNodeGetAttributes - возвращает все аттрибуты выбранного XML узла
- xmlNodeGetChildren - возвращает все дочерние элементы определенного XML узла или определенного дочернего узла
- xmlNodeGetName - возвращает имя тега указанного XML узла
- xmlNodeGetParent - возвращает родительский узел XML узла
- xmlNodeGetValue - читает значения тегов в файлах XML
- xmlNodeSetAttribute - редактирует атрибуты узла в файле конфигурации
- xmlNodeSetName - задает имя тега указанного XML узла
- xmlNodeSetValue - присваивает значения тегам в файлах XML
- xmlSaveFile - сохраняет загруженный файл XML
- xmlUnloadFile - выгружает XML файл из памяти