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]

Reply via email to