On Thu, 22 Nov 2001 22:17:18 +0100
[EMAIL PROTECTED] wrote:

> I've written a PHP-2-XML converter which is sitting directly on the
> Zend-parser. This gives us more speed and more accuracy.

Difficult to do better in fact ... ;)
 
> It has been written because Ulf Wendel convinced me to do it by
> delivering a few pizzas. 

:))

> If someone wants to test it, download it from http://weigon.dyndns.org/

Yeap it works fine :)
Some minor bugfixes i've find tonight (diff -u at bottom)

> It is a php-extension which requires some patches to the Zend engine. If
> someone tests it, don't give up to early. The ext has been written for
> 4.0.4pl1 or the like and won't compile with the latest php as the Zend
> core has changed.

At least it still work with 4.0.6

> Currently missing is the PHPDoc part (the php code) which can handle
> XML.

What to you thing about a double output for this code :
- on a side can generate standart HTML output like 'classical' phpdoc
- on the other a docbook output.

It could be a good way to obtain more easily pear's enduser doc. Even if
the docbook output surely need corrections it could be anyway a nice
starting point... 




--- old_phpdoc.c        Fri Nov 23 08:58:31 2001
+++ phpdoc.c    Fri Nov 23 08:47:44 2001
@@ -17,6 +17,7 @@
    +----------------------------------------------------------------------+
  */
 
+
 #include "php.h"
 #include "php_ini.h"
 #include "php_phpdoc.h"
@@ -488,6 +489,14 @@
                                                PHPDOC_STRCAT(new_string, "/>");
                                                st.pos--;
                                                break;
+                                       case T_INCLUDE:
+                                       case T_INCLUDE_ONCE:
+                                       case T_REQUIRE:
+                                       case T_REQUIRE_ONCE:
+                                               zend_sprintf(buffer, "\"/>\n");
+                                               PHPDOC_STRCAT(new_string, buffer);
+                                               st.pos--;
+                                               break;
                                }
                                break;
                        case '=':
@@ -530,6 +539,14 @@
                                }
                                break;
                        case ',':
+                               switch (find_something(st.stack, st.pos)) {
+                                       case T_FUNCTION_PARAM:
+                                               zend_sprintf(buffer, "/>");
+                                               PHPDOC_STRCAT(new_string, buffer);
+                                               st.pos--;
+                                               break;
+                               }
+                       case T_ARRAY:
                                switch (find_something(st.stack, st.pos)) {
                                        case T_FUNCTION_PARAM:
                                                zend_sprintf(buffer, "/>");


--
Olivier Courtin

-- 
PHP Development 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