Deprecated функции

Промяната и усъвършенстването на дадена технология или софтуер е процес с етапи, които най-често се отбелязват с пореден номер или уникално име на версията. Във всяка следваща версия, освен подобренията и нововъведенията, се прилагат и поправки на вече съществуващи характеристики.

В различните версии на много технологии и проекти като PHP, jQuery, WordPress, HTML и т.н. могат да се видят функции и опции, които са маркирани като deprecated.

Обозначаването на дадена функция като deprecated, означава че използването на тази функция не е препоръчително и че функцията ще бъде премахната в следваща нова версия.

Deprecated функциите се поддържат в текущата версия, в която са обявени като deprecated. Това дава време на разработчиците на приложения, които ползват дадената технология, да обновят кода си, преди реално функционалността да бъде премахната.

В новите версии се изключват определени функции или се заменят с нови, по-добри и по-сигурни. Когато дадена функция не продължи живота си в следващите версии на технологията, влиза в списъка на deprecated функциите и характеристиките.


PHPPHP лого

PHP Deprecated функции

 Функции и опции обозначени за премахване (deprecated)Премахнати и променени функции и опции, несъвместими с предишната версия
PHP 5.3.xregister_globals, magic_quotes_gpc, ereg(), eregi(), session_register(), split(), spliti()…realpath(), clearstatcache(), s2k hashing algorithm…
PHP 5.4.xmcrypt_generic_end(), mysql_list_dbs(), sqlite…safe mode, register_globals, magic_quotes, session_register()…
PHP 5.5.xmcrypt_cbc(), mcrypt_cfb(), mcrypt_ecb(), mysql_connect(),  mysql_query()…php_logo_guid(), zend_logo_guid()…
PHP 5.6.xiconv.output_encoding, mbstring.http_input, mbstring.internal_encoding…json_decode(), Mcrypt functions…

Изпълнение на PHP Deprecated функции

Когато при зареждане на даден сайт се изпълни PHP функция, която е deprecated, се получават подобни съобщения:

PHP Deprecated: Comments starting with ‘#’ are deprecated in /php.ini on line 13…
PHP Deprecated: Directive ‘magic_quotes_gpc‘ is deprecated in PHP 5.3 and greater in …
Deprecated: Assigning the return value of new by reference is deprecated in /locator.php on line 77
Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /connect.php on line 6
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead …
Deprecated: Function split() is deprecated in /library/mail/mail.php on line 50
Deprecated: Function ereg() is deprecated in /init.php on line 110
Deprecated: Function session_is_registered() is deprecated in /logout.php on line 19

Възможно е подобни съобщения да се получат при промяна на версията на PHP за сайт. За всички Linux хостинг планове от СуперХостинг.БГ можете да смените версия на PHP от „PHP Manager by SuperHosting„.

Можете да спрете получаването на тези съобщения по два начина. Първият начин е препоръчителен.

1. Обновяване на кода, смяна на използваната deprecated функция (препоръчително)

2. Деактивиране на показването на тези съобщения

Чрез опциите на директивата error_reporting (в php.ini) може да се контролира какви съобщения за грешка ще се показват.

Например, ако са подадени следните опции:

error_reporting = E_ALL & ~E_NOTICE & ~E_DEPRECATED

ще се показват всички съобщения за грешка (E_ALL), освен нотификациите (E_NOTICE) и предупрежденията за изпълнена deprecated функционалност (E_DEPRECATED).

Показването на всички съобщения за грешка, нотификациите и предупрежденията можете да деактивирате чрез директивата display_errors = Off. Промяната на тази директива може да се извърши бързо и лесно през „PHP Manager by SuperHosting“ в cPanel.

Deprecated при други технологии и проекти

HTML 5HTML5 лого

Премахнати елементи и атрибути в HTML 5: <center>, <font>, <frame>, <frameset>, <noframes>, align(img,table,tr,td), cellpadding, cellspacing (table) …


jQueryjQuery лого

Премахнати (или променени) функции и опции във версиите на
jQuery


PythonPython лого

Премахнати (или променени) функции и опции във версиите на Python: Python 3.4  Python 3.3


WordPressWordPress лого

Премахнати (или променени) функции и опции във версиите на WordPress

Обновена: 12.10.2022
Беше ли Ви полезна тази статия?

Вижте още