]> granicus.if.org Git - php/commitdiff
- Centralize html_puts() again
authorZeev Suraski <zeev@php.net>
Mon, 13 May 2002 08:46:24 +0000 (08:46 +0000)
committerZeev Suraski <zeev@php.net>
Mon, 13 May 2002 08:46:24 +0000 (08:46 +0000)
- Revolutionize phpinfo()'s speed

ext/standard/info.c
main/main.c

index ee72d2e7eed18717de180e9d8904bba9483e3217..2f165320d377e38d4107f48f593f8dda62c1f081 100644 (file)
@@ -532,7 +532,10 @@ PHP_FUNCTION(phpinfo)
                flag = PHP_INFO_ALL;
        }
 
+       /* Andale!  Andale!  Yee-Hah! */
+       php_start_ob_buffer(NULL, 4096, 0 TSRMLS_CC);
        php_print_info(flag TSRMLS_CC);
+       php_end_ob_buffer(1, 0 TSRMLS_CC);
 
        RETURN_TRUE;
 }
index 01be84cab4060accee5804afeeed7b1db32cd9bc..88941215effabbed077c022a39dd6bbae234028a 100644 (file)
@@ -378,46 +378,9 @@ PHPAPI int php_printf(const char *format, ...)
 /* }}} */
 
 /* {{{ php_html_puts */
-#include "ext/standard/php_smart_str.h"
-
 PHPAPI void php_html_puts(const char *str, uint size TSRMLS_DC)
 {
-       const char *end = str+size;
-       const char *p = str;
-       smart_str s = {0};
-
-       while (p < end) {
-               switch (*p) {
-                       case '\n':
-                               smart_str_appendl(&s, "<br />", sizeof("<br />")-1);
-                               break;
-                       case '<':
-                               smart_str_appendl(&s, "&lt;", sizeof("&lt;")-1);
-                               break;
-                       case '>':
-                               smart_str_appendl(&s, "&gt;", sizeof("&gt;")-1);
-                               break;
-                       case '&':
-                               smart_str_appendl(&s, "&amp;", sizeof("&amp;")-1);
-                               break;
-                       case ' ':
-                               while (++p < end && *p == ' ');
-
-                               smart_str_appends(&s, "&nbsp;");
-                               continue;
-                       case '\t':
-                               smart_str_appendl(&s, "&nbsp;&nbsp;&nbsp;&nbsp;", sizeof("&nbsp;&nbsp;&nbsp;&nbsp;")-1);
-                               break;
-                       default:
-                               smart_str_appendc(&s, *p);
-               }
-               p++;
-       }
-
-       if (s.c) {
-               PHPWRITE(s.c, s.len);
-               smart_str_free(&s);
-       }
+       zend_html_puts(str, size);
 }
 /* }}} */