Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Maksymalna długość atrybutu w DOMDocument
Forum PHP.pl > Forum > PHP
sazian
Witam,
mam problem z otwieraniem plików xml(dokładniej svg) jeśli któryś ze znaczków zawiera duży atrybut.
Przez duży rozumiem obrazek zapisany w base64 o rozmiarze powyżej 10mb.

Przy próbie wczytania takiego pliku dostaję komunikat
Cytat
Warning: DOMDocument::loadXML(): AttValue length too long in Entity

Czy da się gdzieś ustawić maksymalny rozmiar atrybutów ?
Ewentualnie czy jakaś inna biblioteka/klasa poradzi sobie z takim plikiem ?

Przykładowy plik jaki potrzebuję przerobić https://dl.dropboxusercontent.com/u/6013884/HRL9X544GN.svg
Pyton_000
A po kiego wałka zapisywać obrazek w Base64 w pliku svg?
sazian
bo gdyż ponieważ potrzebuję pojedynczy plik wynikowy z projektem smile.gif
Normalnie jest tam więcej grafik dlatego jest to jako svg - czasami muszę "wyłączyć" część grafik lub coś przeskalować.
Ponieważ muszę mieć to w formacie możliwym do edycji zdecydowałem się na svg,
a dlatego że muszę mieć jeden plik używam zapisu w base64
trueblue
Można również inaczej przechowywać obrazki w svg:

  1. <svg version="1.1"
  2. xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="114px" height="114px"
  3. viewBox="0 0 114 114" xml:space="preserve">
  4. <image width="114" height="115" xlink:href="obrazek.png" >
  5. </image>
  6. </svg>
sazian
i tym oto sposobem muszę utworzyć dwa pliki, a nie jeden
LowiczakPL
to

$Xml = new SimpleXMLElement ($ treści, LIBXML_PARSEHUGE); http://php.net/manual/en/libxml.constants.php

a może ta biblioteka pomoże https://github.com/prewk/XmlStreamer
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.