YML (Yandex Market Language) streaming parser with validation. Based on XMLReader. Suitable for large files.
Add the "lireincore/ymlparser": "^3.2"
package to your require
section in the composer.json
file
or
$ php composer.phar require lireincore/ymlparser
use LireinCore\YMLParser\YML;
$yml = new YML();
try {
$yml->parse($filepath);
$date = $yml->getDate();
$shop = $yml->getShop();
if ($shop->isValid()) {
$offersCount = $shop->getOffersCount();
$shopData = $shop->getData();
//...
foreach ($yml->getOffers() as $offer) {
if ($offer->isValid()) {
$offerCategoryHierarchy = $shop->getCategoryHierarchy($offer->getCategoryId());
$offerData = $offer->getData();
//...
} else {
var_dump($offer->getErrors());
//...
}
}
} else {
var_dump($shop->getErrors());
//...
}
} catch (\Exception $e) {
echo $e->getMessage();
//...
}
The MIT License (MIT). Please see License File for more information.