[PHP-DOC] Bug #14499 Updated: encoding with XSLT problem From: sniper <email protected>
Date: 06/18/02

 ID: 14499
 Updated by: sniper <email protected>
 Reported By: douglasd <email protected>
 Status: Duplicate
-Bug Type: XSLT related
+Bug Type: Documentation problem
 Operating System: windows 2000
 PHP Version: 4.1.0

Previous Comments:
------------------------------------------------------------------------

[2002-06-02 16:04:35] k.schroeder <email protected>

Same problem as #14965.

Regards, Kai

------------------------------------------------------------------------

[2002-05-02 00:19:42] tim <email protected>

Same problem occurs with PHP 4.2.0 on Win2K.

Updating with the proposed dll by ax <email protected> doesn't fix it either.
Neither does setting the encoding in the xml and/or the xslt file.

Sorry Sterling, but I'd say it definitely is a bug

------------------------------------------------------------------------

[2002-03-28 15:29:44] ax <email protected>

i run into the same problem with the php-4.1.1/2 windows binaries. i
tried to solve the problem by getting the latest sablotron binaries for
windows (http://www.gingerall.com/charlie/ga/xml/d_sab.xml) - which do
include encoding support - but still got the "xslt_set_encoding() is
not supported in this PHP build". a look into the sources revealed the
problem:

ext\xslt\sablot.c

#ifdef HAVE_SABLOT_SET_ENCODING
        PHP_FE(xslt_set_encoding, NULL)
#else
        PHP_FALIAS(xslt_set_encoding, warn_not_available, NULL)
#endif

etc.

so i recompiled php_xslt with #define HAVE_SABLOT_SET_ENCODING - and
voila - it works perfectly! (fyi: the dll is available from
http://kollm.org/php_xslt/php_xslt.dll)

as windows user typically dont compile php - they get the windows
binaries and expect them to work ;) - i would recommend to include the
appropriate changes (sablotron dll's with encoding support;
HAVE_SABLOT_SET_ENCODING defined) into the next binary release. this
error is really frustrating for windows users because most of them dont
have the possibility to recompile php.

thanks!

------------------------------------------------------------------------

[2001-12-14 11:59:35] sterling <email protected>

In order to use utf-8 you must set the encoding from within your <?xml
?> block.. If you want to use the xslt_set_encoding() function than you
must compile sablotron itself with encoding support.

not a bug.

------------------------------------------------------------------------

[2001-12-13 17:52:07] douglasd <email protected>

I got this error using XSLT in PHP-4.1.0 on Windows 2000.

Warning: Sablotron error on line 1: unknown encoding '' in
e:\www\htdocs\home.php on line 151
Warning: Unknown persistent list entry type in module shutdown (11) in
Unknown on line 0

and when I add an encoding statement,

Warning: xslt_set_encoding() is not supported in this PHP build in
e:\www\htdocs\home.php on line 150

My code:

$xml = $doc->dumpmem();

$arguments = array(
     '/_xml' => $xml,
);

// Allocate a new XSLT processor
$xh = xslt_create();

#xslt_set_encoding($xh, "utf-8");

// Process the document
$result = xslt_process($xh, 'arg:/_xml', $include_dir . $xslt_filename,
NULL, $arguments);

var_dump($result);

xslt_free($xh);

------------------------------------------------------------------------

-- 
Edit this bug report at http://bugs.php.net/?id=14499&edit=1