summaryrefslogtreecommitdiff
path: root/ext/xmlwriter/php_xmlwriter.c
diff options
context:
space:
mode:
authorPierre Joye <pajoye@php.net>2005-02-21 15:05:54 +0000
committerPierre Joye <pajoye@php.net>2005-02-21 15:05:54 +0000
commit46eb3e977ced0a8f1bee816a237d5ce7c1938b43 (patch)
tree2af00ab699ddb0ce8289dc8af2277d2adb2c4a36 /ext/xmlwriter/php_xmlwriter.c
parentbafbe90392f95af4c6ad7175a6799238ff1cc870 (diff)
downloadphp-git-46eb3e977ced0a8f1bee816a237d5ce7c1938b43.tar.gz
- add xmlTextWriterStartComment and xmlTextWriterEndComment support
Diffstat (limited to 'ext/xmlwriter/php_xmlwriter.c')
-rw-r--r--ext/xmlwriter/php_xmlwriter.c59
1 files changed, 58 insertions, 1 deletions
diff --git a/ext/xmlwriter/php_xmlwriter.c b/ext/xmlwriter/php_xmlwriter.c
index 11e3a8e051..8b685675db 100644
--- a/ext/xmlwriter/php_xmlwriter.c
+++ b/ext/xmlwriter/php_xmlwriter.c
@@ -37,9 +37,13 @@ static zend_function_entry xmlwriter_functions[] = {
PHP_FE(xmlwriter_set_indent, NULL)
PHP_FE(xmlwriter_set_indent_string, NULL)
#endif
+#if LIBXML_VERSION >= 20616
+ PHP_FE(xmlwriter_start_comment, NULL)
+ PHP_FE(xmlwriter_end_comment, NULL)
+#endif
PHP_FE(xmlwriter_start_attribute, NULL)
- PHP_FE(xmlwriter_end_attribute, NULL)
PHP_FE(xmlwriter_start_attribute_ns, NULL)
+ PHP_FE(xmlwriter_end_attribute, NULL)
PHP_FE(xmlwriter_write_attribute, NULL)
PHP_FE(xmlwriter_write_attribute_ns, NULL)
PHP_FE(xmlwriter_start_element, NULL)
@@ -742,6 +746,59 @@ PHP_FUNCTION(xmlwriter_text)
RETURN_FALSE;
}
+/* {{{ proto bool xmlwriter_start_comment(resource xmlwriter)
+Create start comment - returns FALSE on error */
+PHP_FUNCTION(xmlwriter_start_comment)
+{
+ zval *pind;
+ xmlwriter_object *intern;
+ xmlTextWriterPtr ptr;
+ int retval;
+
+ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "r", &pind) == FAILURE) {
+ return;
+ }
+
+ ZEND_FETCH_RESOURCE(intern,xmlwriter_object *, &pind, -1, "XMLWriter", le_xmlwriter);
+ ptr = intern->ptr;
+
+ if (ptr) {
+ retval = xmlTextWriterStartComment(ptr);
+ if (retval != -1) {
+ RETURN_TRUE;
+ }
+ }
+
+ RETURN_FALSE;
+}
+
+/* {{{ proto bool xmlwriter_end_comment(resource xmlwriter)
+Create end comment - returns FALSE on error */
+PHP_FUNCTION(xmlwriter_end_comment)
+{
+ zval *pind;
+ xmlwriter_object *intern;
+ xmlTextWriterPtr ptr;
+ int retval;
+
+ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "r", &pind) == FAILURE) {
+ return;
+ }
+
+ ZEND_FETCH_RESOURCE(intern,xmlwriter_object *, &pind, -1, "XMLWriter", le_xmlwriter);
+ ptr = intern->ptr;
+
+ if (ptr) {
+ retval = xmlTextWriterEndComment(ptr);
+ if (retval != -1) {
+ RETURN_TRUE;
+ }
+ }
+
+ RETURN_FALSE;
+}
+
+
/* {{{ proto bool xmlwriter_write_comment(resource xmlwriter, string content)
Write full comment tag - returns FALSE on error */
PHP_FUNCTION(xmlwriter_write_comment)