steinm Thu Feb 8 07:12:16 2001 EDT
Modified files:
/php4/ext/domxml php_domxml.c php_domxml.h
Log:
- add domxml_unlink_node(), not tested
Index: php4/ext/domxml/php_domxml.c
diff -u php4/ext/domxml/php_domxml.c:1.26 php4/ext/domxml/php_domxml.c:1.27
--- php4/ext/domxml/php_domxml.c:1.26 Fri Jan 26 00:15:57 2001
+++ php4/ext/domxml/php_domxml.c Thu Feb 8 07:12:16 2001
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: php_domxml.c,v 1.26 2001/01/26 08:15:57 steinm Exp $ */
+/* $Id: php_domxml.c,v 1.27 2001/02/08 15:12:16 steinm Exp $ */
#include "php.h"
@@ -69,6 +69,7 @@
PHP_FE(domxml_children, NULL)
PHP_FE(domxml_new_child, NULL)
PHP_FE(domxml_node, NULL)
+ PHP_FE(domxml_unlink_node, NULL)
PHP_FE(domxml_set_content, NULL)
PHP_FE(domxml_new_xmldoc, NULL)
PHP_FALIAS(new_xmldoc, domxml_new_xmldoc, NULL)
@@ -115,12 +116,15 @@
PHP_FALIAS(set_attribute, domxml_set_attribute, NULL)
PHP_FALIAS(attributes, domxml_attributes, NULL)
PHP_FALIAS(node, domxml_node, NULL)
+ PHP_FALIAS(unlink, domxml_unlink_node, NULL)
PHP_FALIAS(set_content, domxml_set_content, NULL)
{NULL, NULL, NULL}
};
#if defined(LIBXML_XPATH_ENABLED)
static zend_function_entry php_xpathctx_class_functions[] = {
+ PHP_FALIAS(xpath_eval, xpath_eval, NULL)
+ PHP_FALIAS(xpath_eval_expression, xpath_eval_expression, NULL)
{NULL, NULL, NULL}
};
@@ -699,6 +703,40 @@
zend_hash_next_index_insert(return_value->value.ht, &child,
sizeof(zval *), NULL);
last = last->next;
}
+}
+/* }}} */
+
+/* {{{ proto object domxml_unlink_node([int node])
+ Deletes node */
+PHP_FUNCTION(domxml_unlink_node)
+{
+ zval *id, **tmp;
+ xmlNode *nodep, *last;
+ int ret;
+
+ if (ZEND_NUM_ARGS() == 0) {
+ id = getThis();
+ if (id) {
+ if (zend_hash_find(id->value.obj.properties, "node",
+sizeof("node"), (void **)&tmp) == FAILURE) {
+ php_error(E_WARNING, "unable to find my handle
+property");
+ RETURN_FALSE;
+ }
+ ZEND_FETCH_RESOURCE(nodep,xmlNodePtr,tmp,-1, "DomNode",
+le_domxmlnodep)
+ } else {
+ RETURN_FALSE;
+ }
+ } else if ((ZEND_NUM_ARGS() != 1) || getParameters(ht, 1, &id) == FAILURE) {
+ WRONG_PARAM_COUNT;
+ } else {
+ if (zend_hash_find(id->value.obj.properties, "node", sizeof("node"),
+(void **)&tmp) == FAILURE) {
+ php_error(E_WARNING, "unable to find my handle property");
+ RETURN_FALSE;
+ }
+ ZEND_FETCH_RESOURCE(nodep,xmlNodePtr,tmp,-1, "DomNode", le_domxmlnodep)
+ }
+
+ xmlUnlinkNode(nodep);
+ RETURN_TRUE;
}
/* }}} */
Index: php4/ext/domxml/php_domxml.h
diff -u php4/ext/domxml/php_domxml.h:1.20 php4/ext/domxml/php_domxml.h:1.21
--- php4/ext/domxml/php_domxml.h:1.20 Fri Jan 26 00:15:57 2001
+++ php4/ext/domxml/php_domxml.h Thu Feb 8 07:12:16 2001
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: php_domxml.h,v 1.20 2001/01/26 08:15:57 steinm Exp $ */
+/* $Id: php_domxml.h,v 1.21 2001/02/08 15:12:16 steinm Exp $ */
#ifndef PHP_DOMXML_H
#define PHP_DOMXML_H
@@ -55,6 +55,7 @@
PHP_FUNCTION(domxml_last_child);
PHP_FUNCTION(domxml_parent);
PHP_FUNCTION(domxml_node);
+PHP_FUNCTION(domxml_unlink_node);
PHP_FUNCTION(domxml_new_child);
PHP_FUNCTION(domxml_set_content);
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]