|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
[2009-01-24 05:02 UTC] nforbes@php.net
Description:
------------
In 5.3, attempting to extend XSLTProcessor in the same way as in 5.2 (with type hinting on the method parameters) yields an E_STRICT message: "Declaration of ExtendedXSLTProcessor::importStylesheet() should be compatible with that of XSLTProcessor::importStylesheet()".
Removing the type hint fixes the problem in 5.3. I am assuming this behavior is unintentional, and that the type hint should still be associated with the methods.
This applies to both ::importStylesheet() and ::transformToDoc(), and potentially other methods as well.
Reproduce code:
---------------
<?php
class ExtendedXSLTProcessor extends XSLTProcessor {
public function importStylesheet(DOMDocument $stylesheet) {
parent::importStylesheet($stylesheet);
/* ... */
}
}
?>
Actual result:
--------------
Strict Standards: Declaration of ExtendedXSLTProcessor::importStylesheet() should be compatible with that of XSLTProcessor::importStylesheet() in /.../test.php on line 8
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
|
|||||||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Sat Oct 25 12:00:01 2025 UTC |
Rob, any problem with a atch like ------------------------ Index: ext/xsl/xsltprocessor.c =================================================================== RCS file: /repository/php-src/ext/xsl/xsltprocessor.c,v retrieving revision 1.39.2.2.2.9.2.15 diff -u -p -r1.39.2.2.2.9.2.15 xsltprocessor.c --- ext/xsl/xsltprocessor.c 31 Dec 2008 11:15:47 -0000 1.39.2.2.2.9.2.15 +++ ext/xsl/xsltprocessor.c 30 Jan 2009 16:59:15 -0000 @@ -29,7 +29,7 @@ /* {{{ arginfo */ ZEND_BEGIN_ARG_INFO_EX(arginfo_xsl_xsltprocessor_import_stylesheet, 0, 0, 1) - ZEND_ARG_INFO(0, doc) + ZEND_ARG_OBJ_INFO(0, doc, "DOMDocument", 0) ZEND_END_ARG_INFO(); ZEND_BEGIN_ARG_INFO_EX(arginfo_xsl_xsltprocessor_transform_to_doc, 0, 0, 1) ------------------------ I didn't properly test it but it should work ...