chacmol / dompdf

Automatically exported from code.google.com/p/dompdf
0 stars 0 forks source link

Certain locale settings break rendering (PHP bug) #444

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
If a user sets the PHP locale to certain values (e.g. tr_TR for Turkish) DOMPDF 
will die with the following error:
Fatal error: Interface 'IteratorAggregate' not found in 
dompdf/include/frame.cls.php

The issue is due to a bug in PHP (see references below). As I understand it, 
when a PHP class is instantiated a quick match is made using a lowercase 
version of the class name. In some languages upper- and lowercase versions of a 
letter are different than in other languages (e.g. Turkish vs. English). When 
the locale is set one of those languages the lowercase version of the class 
name no longer matches.

DOMPDF dies at the above class, but others may also be affected.

Since the problem has been present in PHP for a number of years we may want to 
go ahead and build a work around into the DOMPDF source (if feasible).

Support group discussion:
https://groups.google.com/d/topic/dompdf/NrCz8Qeen1I/discussion

PHP bug references:
https://bugs.php.net/bug.php?id=18556
https://bugs.php.net/bug.php?id=35050

Original issue reported on code.google.com by eclecticgeek on 19 Mar 2012 at 2:35

GoogleCodeExporter commented 9 years ago

Original comment by eclecticgeek on 24 May 2013 at 3:00