diff options
| author | Rob Richards <rrichards@php.net> | 2005-01-02 12:22:36 +0000 |
|---|---|---|
| committer | Rob Richards <rrichards@php.net> | 2005-01-02 12:22:36 +0000 |
| commit | 6bbb254ecc5d75c477c0be2c6a17863ff46f2bf9 (patch) | |
| tree | 63c43e3b4990ad32bb7851a0ca40ab0cb5e961e0 /ext/dom/document.c | |
| parent | 6a644188099461f6b78e3f229688ab7aae5fdc40 (diff) | |
| download | php-git-6bbb254ecc5d75c477c0be2c6a17863ff46f2bf9.tar.gz | |
allow parser flags to be passed to xinclude()
Diffstat (limited to 'ext/dom/document.c')
| -rw-r--r-- | ext/dom/document.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/ext/dom/document.c b/ext/dom/document.c index 6b3df1fc64..dbcd060d21 100644 --- a/ext/dom/document.c +++ b/ext/dom/document.c @@ -1743,23 +1743,27 @@ static void php_dom_remove_xinclude_nodes(xmlNodePtr cur TSRMLS_DC) { } } -/* {{{ proto int dom_document_xinclude() +/* {{{ proto int dom_document_xinclude([int options]) Substitutues xincludes in a DomDocument */ PHP_FUNCTION(dom_document_xinclude) { zval *id; xmlDoc *docp; xmlNodePtr root; - int err; + int err, flags = 0; dom_object *intern; - if (zend_parse_method_parameters(ZEND_NUM_ARGS() TSRMLS_CC, getThis(), "O", &id, dom_document_class_entry) == FAILURE) { + if (zend_parse_method_parameters(ZEND_NUM_ARGS() TSRMLS_CC, getThis(), "O|l", &id, dom_document_class_entry, &flags) == FAILURE) { return; } DOM_GET_OBJ(docp, id, xmlDocPtr, intern); +#if LIBXML_VERSION >= 20600 + err = xmlXIncludeProcessFlags(docp, flags); +#else err = xmlXIncludeProcess (docp); +#endif /* XML_XINCLUDE_START and XML_XINCLUDE_END nodes need to be removed as these are added via xmlXIncludeProcess to mark beginning and ending of xincluded document |
