From: Zeev Suraski Date: Mon, 13 May 2002 08:46:24 +0000 (+0000) Subject: - Centralize html_puts() again X-Git-Tag: php-4.3.0dev-ZendEngine2-Preview1~71 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2260e1742d671a2b57b0d086faf87393a0460bef;p=php - Centralize html_puts() again - Revolutionize phpinfo()'s speed --- diff --git a/ext/standard/info.c b/ext/standard/info.c index ee72d2e7ee..2f165320d3 100644 --- a/ext/standard/info.c +++ b/ext/standard/info.c @@ -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; } diff --git a/main/main.c b/main/main.c index 01be84cab4..88941215ef 100644 --- a/main/main.c +++ b/main/main.c @@ -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, "
", sizeof("
")-1); - break; - case '<': - smart_str_appendl(&s, "<", sizeof("<")-1); - break; - case '>': - smart_str_appendl(&s, ">", sizeof(">")-1); - break; - case '&': - smart_str_appendl(&s, "&", sizeof("&")-1); - break; - case ' ': - while (++p < end && *p == ' '); - - smart_str_appends(&s, " "); - continue; - case '\t': - smart_str_appendl(&s, "    ", sizeof("    ")-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); } /* }}} */