pollita Wed Nov 19 16:10:34 2003 EDT Modified files: /php-src/ext/standard head.c head.h basic_functions.c /php-src NEWS Log: New function: headers_list(). Ennumerate headers sent to SAPI engine Index: php-src/ext/standard/head.c diff -u php-src/ext/standard/head.c:1.71 php-src/ext/standard/head.c:1.72 --- php-src/ext/standard/head.c:1.71 Wed Aug 20 16:51:10 2003 +++ php-src/ext/standard/head.c Wed Nov 19 16:10:29 2003 @@ -15,7 +15,7 @@ | Author: Rasmus Lerdorf <[EMAIL PROTECTED]> | +----------------------------------------------------------------------+ */ -/* $Id: head.c,v 1.71 2003/08/20 20:51:10 bfrance Exp $ */ +/* $Id: head.c,v 1.72 2003/11/19 21:10:29 pollita Exp $ */ #include <stdio.h> @@ -223,6 +223,33 @@ } /* }}} */ +/* {{{ php_head_apply_header_list_to_hash + Turn an llist of sapi_header_struct headers into a numerically indexed zval hash */ +static void php_head_apply_header_list_to_hash(void *data, void *arg TSRMLS_DC) +{ + sapi_header_struct *sapi_header = (sapi_header_struct *)data; + + if (arg && sapi_header) { + add_next_index_string((zval *)arg, (char *)(sapi_header->header), 1); + } +} + +/* {{{ proto string headers_list(void) + Return list of headers to be sent / already sent */ +PHP_FUNCTION(headers_list) +{ + if (ZEND_NUM_ARGS() > 0) { + WRONG_PARAM_COUNT; + } + + if (!&SG(sapi_headers).headers) { + RETURN_FALSE; + } + array_init(return_value); + zend_llist_apply_with_argument(&SG(sapi_headers).headers, php_head_apply_header_list_to_hash, return_value); +} +/* }}} */ + /* * Local variables: * tab-width: 4 Index: php-src/ext/standard/head.h diff -u php-src/ext/standard/head.h:1.25 php-src/ext/standard/head.h:1.26 --- php-src/ext/standard/head.h:1.25 Wed Aug 20 16:51:10 2003 +++ php-src/ext/standard/head.h Wed Nov 19 16:10:29 2003 @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: head.h,v 1.25 2003/08/20 20:51:10 bfrance Exp $ */ +/* $Id: head.h,v 1.26 2003/11/19 21:10:29 pollita Exp $ */ #ifndef HEAD_H #define HEAD_H @@ -26,6 +26,7 @@ PHP_FUNCTION(setcookie); PHP_FUNCTION(setrawcookie); PHP_FUNCTION(headers_sent); +PHP_FUNCTION(headers_list); PHPAPI int php_header(TSRMLS_D); PHPAPI int php_setcookie(char *name, int name_len, char *value, int value_len, time_t expires, char *path, int path_len, char *domain, int domain_len, int secure, int url_encode TSRMLS_DC); Index: php-src/ext/standard/basic_functions.c diff -u php-src/ext/standard/basic_functions.c:1.641 php-src/ext/standard/basic_functions.c:1.642 --- php-src/ext/standard/basic_functions.c:1.641 Fri Nov 14 17:55:54 2003 +++ php-src/ext/standard/basic_functions.c Wed Nov 19 16:10:29 2003 @@ -17,7 +17,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: basic_functions.c,v 1.641 2003/11/14 22:55:54 iliaa Exp $ */ +/* $Id: basic_functions.c,v 1.642 2003/11/19 21:10:29 pollita Exp $ */ #include "php.h" #include "php_streams.h" @@ -620,6 +620,7 @@ PHP_FE(setrawcookie, NULL) PHP_FE(header, NULL) PHP_FE(headers_sent, first_and_second__args_force_ref) + PHP_FE(headers_list, NULL) PHP_FE(connection_aborted, NULL) PHP_FE(connection_status, NULL) Index: php-src/NEWS diff -u php-src/NEWS:1.1499 php-src/NEWS:1.1500 --- php-src/NEWS:1.1499 Fri Nov 14 17:55:53 2003 +++ php-src/NEWS Wed Nov 19 16:10:33 2003 @@ -4,6 +4,7 @@ - Added new functions: . dba_key_split() to split inifile keys in an array. (Marcus) . time_nanosleep() signal safe sleep (Magnus, Ilia) + . headers_list(). (Sara) - Fixed bug #26072 (--disable-libxml does not work). (Jani) - Fixed bug #26083 (Non-working write support in ext/dom). (Ilia) - Fixed bug #24394 (Serializing cross-referenced objects causes segfault).
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php