mike Wed Jul 19 12:25:46 2006 UTC
Modified files: (Branch: PHP_5_2)
/php-src NEWS
/php-src/ext/standard basic_functions.c basic_functions.h
/php-src/main main.c php_globals.h
Log:
MFH: added error_get_last() function
http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.131&r2=1.2027.2.547.2.132&diff_format=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.2027.2.547.2.131 php-src/NEWS:1.2027.2.547.2.132
--- php-src/NEWS:1.2027.2.547.2.131 Wed Jul 19 09:55:17 2006
+++ php-src/NEWS Wed Jul 19 12:25:46 2006
@@ -7,7 +7,6 @@
- Added support for Apache2Filter in the Windows build including binary
support for both Apache 2.0.x (php5apache2_filter.dll) and
Apache 2.2.x (php5apache2_2_filter.dll). (Edin)
-- Added gmp_nextprime() function. (ants dot aasma at gmail dot com, Tony)
- Updated timezonedb to version 2006.7. (Derick)
- Changed priority of PHPRC environment variable on win32 to be higher then
value from registry. (Dmitry)
@@ -80,6 +79,8 @@
- Added SimpleXMLElement::saveXML() as an alias for SimpleXMLElement::asXML().
(Hannes)
- Added DOMNode::getNodePath() for getting an XPath for a node. (Christian)
+- Added gmp_nextprime() function. (ants dot aasma at gmail dot com, Tony)
+- Added error_get_last() function. (Mike)
- Optimized zend_try/zend_catch macros by eliminating memcpy(3). (Dmitry)
- Optimized require_once() and include_once() by eliminating fopen(3)
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/basic_functions.c?r1=1.725.2.31.2.16&r2=1.725.2.31.2.17&diff_format=u
Index: php-src/ext/standard/basic_functions.c
diff -u php-src/ext/standard/basic_functions.c:1.725.2.31.2.16
php-src/ext/standard/basic_functions.c:1.725.2.31.2.17
--- php-src/ext/standard/basic_functions.c:1.725.2.31.2.16 Sat Jul 15
10:21:09 2006
+++ php-src/ext/standard/basic_functions.c Wed Jul 19 12:25:46 2006
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: basic_functions.c,v 1.725.2.31.2.16 2006/07/15 10:21:09 helly Exp $ */
+/* $Id: basic_functions.c,v 1.725.2.31.2.17 2006/07/19 12:25:46 mike Exp $ */
#include "php.h"
#include "php_streams.h"
@@ -774,6 +774,10 @@
ZEND_END_ARG_INFO()
static
+ZEND_BEGIN_ARG_INFO_EX(arginfo_error_get_last, 0, 0, 0)
+ZEND_END_ARG_INFO()
+
+static
ZEND_BEGIN_ARG_INFO_EX(arginfo_call_user_func, 0, 0, 1)
ZEND_ARG_INFO(0, function_name)
ZEND_ARG_INFO(0, parmeter)
@@ -3357,6 +3361,7 @@
PHP_FE(import_request_variables,
arginfo_import_request_variables)
PHP_FE(error_log,
arginfo_error_log)
+ PHP_FE(error_get_last,
arginfo_error_get_last)
PHP_FE(call_user_func,
arginfo_call_user_func)
PHP_FE(call_user_func_array,
arginfo_call_user_func_array)
PHP_DEP_FE(call_user_method,
arginfo_call_user_method)
@@ -4957,6 +4962,23 @@
return SUCCESS;
}
+/* {{{ proto array error_get_last()
+ Get the last occurred error as associative array. Returns NULL if there
hasn't been an error yet. */
+PHP_FUNCTION(error_get_last)
+{
+ if (ZEND_NUM_ARGS()) {
+ WRONG_PARAM_COUNT;
+ }
+ if (PG(last_error_message)) {
+ array_init(return_value);
+ add_assoc_long_ex(return_value, "type", sizeof("type"),
PG(last_error_type));
+ add_assoc_string_ex(return_value, "message", sizeof("message"),
PG(last_error_message), 1);
+ add_assoc_string_ex(return_value, "file", sizeof("file"),
PG(last_error_file)?PG(last_error_file):"-", 1 );
+ add_assoc_long_ex(return_value, "line", sizeof("line"),
PG(last_error_lineno));
+ }
+}
+/* }}} */
+
/* {{{ proto mixed call_user_func(string function_name [, mixed parmeter] [,
mixed ...])
Call a user function which is the first parameter */
PHP_FUNCTION(call_user_func)
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/basic_functions.h?r1=1.139.2.4.2.1&r2=1.139.2.4.2.2&diff_format=u
Index: php-src/ext/standard/basic_functions.h
diff -u php-src/ext/standard/basic_functions.h:1.139.2.4.2.1
php-src/ext/standard/basic_functions.h:1.139.2.4.2.2
--- php-src/ext/standard/basic_functions.h:1.139.2.4.2.1 Sun May 14
16:06:48 2006
+++ php-src/ext/standard/basic_functions.h Wed Jul 19 12:25:46 2006
@@ -17,7 +17,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: basic_functions.h,v 1.139.2.4.2.1 2006/05/14 16:06:48 iliaa Exp $ */
+/* $Id: basic_functions.h,v 1.139.2.4.2.2 2006/07/19 12:25:46 mike Exp $ */
#ifndef BASIC_FUNCTIONS_H
#define BASIC_FUNCTIONS_H
@@ -79,6 +79,7 @@
PHP_FUNCTION(import_request_variables);
PHP_FUNCTION(error_log);
+PHP_FUNCTION(error_get_last);
PHP_FUNCTION(call_user_func);
PHP_FUNCTION(call_user_func_array);
http://cvs.php.net/viewvc.cgi/php-src/main/main.c?r1=1.640.2.23.2.11&r2=1.640.2.23.2.12&diff_format=u
Index: php-src/main/main.c
diff -u php-src/main/main.c:1.640.2.23.2.11 php-src/main/main.c:1.640.2.23.2.12
--- php-src/main/main.c:1.640.2.23.2.11 Tue Jul 18 09:06:33 2006
+++ php-src/main/main.c Wed Jul 19 12:25:46 2006
@@ -18,7 +18,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: main.c,v 1.640.2.23.2.11 2006/07/18 09:06:33 dmitry Exp $ */
+/* $Id: main.c,v 1.640.2.23.2.12 2006/07/19 12:25:46 mike Exp $ */
/* {{{ includes
*/
@@ -683,6 +683,7 @@
if (PG(last_error_file)) {
free(PG(last_error_file));
}
+ PG(last_error_type) = type;
PG(last_error_message) = strdup(buffer);
PG(last_error_file) = strdup(error_filename);
PG(last_error_lineno) = error_lineno;
http://cvs.php.net/viewvc.cgi/php-src/main/php_globals.h?r1=1.98.2.1.2.1&r2=1.98.2.1.2.2&diff_format=u
Index: php-src/main/php_globals.h
diff -u php-src/main/php_globals.h:1.98.2.1.2.1
php-src/main/php_globals.h:1.98.2.1.2.2
--- php-src/main/php_globals.h:1.98.2.1.2.1 Fri Jun 16 14:09:01 2006
+++ php-src/main/php_globals.h Wed Jul 19 12:25:46 2006
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: php_globals.h,v 1.98.2.1.2.1 2006/06/16 14:09:01 rasmus Exp $ */
+/* $Id: php_globals.h,v 1.98.2.1.2.2 2006/07/19 12:25:46 mike Exp $ */
#ifndef PHP_GLOBALS_H
#define PHP_GLOBALS_H
@@ -142,6 +142,7 @@
zend_bool always_populate_raw_post_data;
zend_bool report_zend_debug;
+ int last_error_type;
char *last_error_message;
char *last_error_file;
int last_error_lineno;
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php