Deprecated functions
| From: | Tjerk Meesters | Date: | Wed, 10 Sep 2014 05:42:38 +0000 |
| Subject: | Deprecated functions | ||
| Groups: | php.internals | ||
| Request: | Send a blank email to internals+get-77128@lists.php.net to get a copy of this message | ||
Hi,
When I was fixing test cases on my
kill-ereg branch I noticed a Reflection test case
for ReflectionFunction::isDeprecated().
The problem with such a test case is that you’d be chasing deprecated functions to tests against
as we move along; this is the current list of deprecated functions as taken from a typical 5.4
installation:
Since 4.1.0: call_user_method, call_user_method_array
Since 4.3.7: mysql_list_tables, mysql_listtables
Since 5.3 : ereg, ereg_replace, eregi, eregi_replace, split, spliti, sql_regcase, mysql_db_query,
magic_quotes_runtime, set_magic_quotes_runtime, set_socket_blocking
Since 5.4 : mysql_list_dbs
The above are, as far as I’m concerned, all potential candidates for removal in PHP 7, so in order
to reliably test a deprecated function I would suggest introducing a hidden function with this
signature:
void __deprecated__() { }
And mark that function as eternally deprecated using the ZEND_ACC_DEPRECATED flag.
Thoughts?