XML Kütüphanesi
"Dinamik bir kütüphaneyi tanımlarken sınıf isminin başına Internal ön eki getirirerek statik erişimli hale getirebilirsiniz. "
ZN Framework'te XML metin belgesi ve verisi üzerinde manipüslayon işlemleri yapabilmek için oluşturulmuş sınıftır. Oluşturma, ayrıştırma gibi işlemlerin yapılabilmesini sağlar.
# Kurulum
ZN dağıtımları için kurulum gerekmez.
↓ composer require znframework/package-xml
# Yöntemler
this | version(string $version = '1.0') |
this | encoding(string $encoding = 'UTF-8') |
string | build(array $data, string $version = NULL, string $encoding = NULL) |
bool | save(string $file, string $data) |
string | load(string $file) |
mixed | parse(string $xml, string $result = 'object') |
object | parseObject(string $data) |
array | parseArray(string $data) |
string | parseJson(string $data) |
mixed | parseSimple(string $data, int $option = 0) |
mixed | parseSimpleURL(string $data, int $option = 0) |
bool | check(string $xml) |
# Version
XML belgesinin versiyon bilgisini ayarlamak için kullanılır.
Parametreler
string | $version = '1.0' | Belgenin versiyonu. |
return | this |
Kullanımı
XML::version('1.1');
# Encoding
XML belgesinin karakter kodlamasını ayarlamak için kullanılır.
Parametreler
string | $encoding = 'utf-8' | Belgenin kodlaması. |
return | this |
Kullanımı
XML::version('1.1')->encoding('UTF-8');
# Build
XML verisi oluşturmak için kullanılır.
Parametreler
array | $arr | Oluşturulacak XML belgesinin dizi formunda yazılması için kulanılır. |
string | $version = NULL | XML::version() yöntemi bu parametre yerine kullanılabilir. |
string | $encoding = NULL | XML::encoding() yöntemi bu parametre yerine kullanılabilir. |
return | string |
Kullanımı
$data = XML::build(
[
'name' => 'media',
'attr' => ['id' => 1],
'child' =>
[
['name' => 'video', 'attr' => ['id' => 2], 'content' => 'Vidyo'],
[
'name' => 'music',
'attr' => ['id' => 3],
'child' =>
[
['name' => 'video', 'attr' => ['id' => 2], 'content' => 'Vidyo'],
['name' => 'video', 'attr' => ['id' => 2], 'content' => 'Vidyo'],
['name' => 'video', 'attr' => ['id' => 2], 'content' => 'Vidyo']
]
]
]
]);
<xml version="1.0" encoding="UTF-8"?>
<media id="1">
<video id="2">Vidyo</video>
<music id="3">
<video id="2">Vidyo</video>
<video id="2">Vidyo</video>
<video id="2">Vidyo</video>
</music>
</media>
# Save
XML dosyası oluşturmak için kullanılır.
Parametreler
string | $file | Kaydedilecek belgenin adı. |
string | $data | Belgeye hangi datanın kaydedileceği. |
return | bool |
Kullanımı
XML::save('test', $data); # test.xml
# Load
Bir XML belgesini yüklemek için kullanılır.
Parametreler
string | $file | Yüklenecek belgenin adı. |
return | string |
Kullanımı
XML::load('test'); # test.xml
# Parse
Bir XML belgesini ayrıştırmak için kullanılır. Nesne veya dizi veri türünde bir dönüşüm yapmak için kullanılır.
Parametreler
string | $xml | Arıştırılacak XML dizgesi. |
string | $type = 'array' | Hangi türe ayrıştırılacağı. |
Seçenekler | json, array, object | |
return | mixed |
Kullanımı
XML::parse($data, 'array'); # Return array
# ParseObject
Bir XML belgesini nesne veri türüne dönüştürmek için kullanılır.
Parametreler
string | $xml | Arıştırılacak XML dizgesi. |
return | object |
Kullanımı
XML::parseObject($data); # Return object
# ParseArray
Bir XML belgesini dizi veri türüne dönüştürmek için kullanılır.
Parametreler
string | $xml | Arıştırılacak XML dizgesi. |
return | array |
Kullanımı
XML::parseArray($data); # Return array
# ParseJson
Bir XML belgesini dizi veri türüne dönüştürmek için kullanılır.
Parametreler
string | $xml | Arıştırılacak XML dizgesi. |
return | string |
Kullanımı
XML::parseJson($data); # Return json
# ParseSimple
Bir XML belgesine ait etiket özellik ve değerlerine ulaşmak için kullanılır. SimpleXMLElement sınıfının kullanımıdır.
Parametreler
string | $xml | Arıştırılacak XML dizgesi. |
return | mixed |
Kullanımı
$data = '<xml version="1.0" encoding="UTF-8"?>
<media id="1">
<video id="2">Vidyo</video>
<music id="3">
<video id="2">Vidyo1</video>
<video id="2">Vidyo2</video>
<video id="2">Vidyo3</video>
</music>
</media>';
$parse = XML::parseSimple($data);
echo $parse->music->video;
echo $parse->music->video[1];
Vidyo2
# Check
Bir XML belgesinin söz diziminin geçerli olup olmadığını kontrol eder.
Parametreler
string | $xml | Kontrol edilecek XML dizgesi. |
return | bool |
Kullanımı
echo XML::check($data);