{"id":500129,"date":"2026-10-24T19:17:10","date_gmt":"2026-10-24T16:17:10","guid":{"rendered":"https:\/\/savepearlharbor.com\/?p=500129"},"modified":"2026-10-24T19:17:10","modified_gmt":"2026-10-24T16:17:10","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=500129","title":{"rendered":"\u042d\u043a\u0441\u0442\u0440\u0435\u043d\u043d\u044b\u0439 \u0440\u0435\u0444\u0430\u043a\u0442\u043e\u0440\u0438\u043d\u0433 32 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432 \u0441 mysql_* \u043d\u0430 PHP 8.5 \u0431\u0435\u0437 \u0435\u0434\u0438\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u0447\u043a\u0438 \u043f\u0440\u0430\u0432\u043e\u043a \u0432 \u0431\u0438\u0437\u043d\u0435\u0441-\u043b\u043e\u0433\u0438\u043a\u0435"},"content":{"rendered":"<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p>\u0412\u0435\u0447\u0435\u0440\u043e\u043c 21 \u043e\u043a\u0442\u044f\u0431\u0440\u044f 2026 \u0433\u043e\u0434\u0430 \u043c\u043e\u0439 \u0442\u0435\u043b\u0435\u0444\u043e\u043d \u0440\u0430\u0437\u043e\u0440\u0432\u0430\u043b\u0441\u044f \u043e\u0442 \u0437\u0432\u043e\u043d\u043a\u043e\u0432. \u0412 \u0440\u0430\u0431\u043e\u0447\u0435\u043c \u0447\u0430\u0442\u0435, \u0433\u0434\u0435 \u043e\u0431\u044b\u0447\u043d\u043e \u043e\u0431\u0441\u0443\u0436\u0434\u0430\u044e\u0442 \u043a\u043e\u0442\u043e\u0432 \u0438 \u0441\u0440\u043e\u043a\u0438 \u0441\u0434\u0430\u0447\u0438 \u043c\u0430\u043a\u0435\u0442\u043e\u0432, \u0432\u0438\u0441\u0435\u043b \u043e\u0434\u0438\u043d\u043e\u043a\u0438\u0439, \u043d\u043e \u043e\u0447\u0435\u043d\u044c \u0436\u0438\u0440\u043d\u044b\u0439 \u0430\u043b\u0435\u0440\u0442 \u043e\u0442 \u043c\u043e\u0435\u0433\u043e \u0441\u043a\u0430\u043d\u0435\u0440\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438. \u041a\u043e\u0442\u043e\u0440\u044b\u0439 \u0433\u043b\u0430\u0441\u0438\u043b, \u0447\u0442\u043e \u043d\u0430\u043c \u0432\u0441\u0435\u043c \u043a\u043e\u043d\u0435\u0446.<\/p>\n<p>\u0414\u0432\u0435 \u043a\u0440\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438 \u0432 PHP, \u0440\u0430\u0441\u043a\u0440\u044b\u0442\u044b\u0435 \u0443\u0442\u0440\u043e\u043c \u044d\u0442\u043e\u0433\u043e \u0437\u043b\u043e\u043f\u043e\u043b\u0443\u0447\u043d\u043e\u0433\u043e \u0434\u043d\u044f. \u0422\u043e\u0447\u043d\u044b\u0445 \u0434\u0435\u0442\u0430\u043b\u0435\u0439 \u0432 \u043f\u0430\u0431\u043b\u0438\u043a\u0435 \u0435\u0449\u0435 \u043d\u0435\u0431\u044b\u043b\u043e. \u0413\u043e\u0432\u043e\u0440\u0438\u043b\u043e\u0441\u044c, \u0447\u0442\u043e \u0432\u0435\u043d\u0434\u043e\u0440 \u0443\u0436\u0435 \u0432\u044b\u043a\u0430\u0442\u0438\u043b \u0444\u0438\u043a\u0441 \u0432 8.5.12, \u0430 \u0432\u0441\u0435, \u0447\u0442\u043e \u043d\u0438\u0436\u0435 \u2014 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0432 \u043a\u0440\u0430\u0441\u043d\u043e\u0439 \u0437\u043e\u043d\u0435. \u0422\u0430\u043a\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u0431\u044b\u043b\u0430 \u043d\u0430 \u043c\u043e\u043c\u0435\u043d\u0442 \u043e\u0441\u043e\u0437\u043d\u0430\u043d\u0438\u044f \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b.<\/p>\n<p>\u0423 \u043c\u0435\u043d\u044f \u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0435 \u043e\u043a\u043e\u043b\u043e \u0441\u043e\u0442\u043d\u0438 \u0441\u0430\u0439\u0442\u043e\u0432. \u0420\u0430\u0437\u0431\u0440\u043e\u0441 \u043f\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c \u2014 \u043e\u0442 \u0443\u0431\u0438\u0442\u043e\u0433\u043e shared-\u0445\u043e\u0441\u0442\u0438\u043d\u0433\u0430, \u0433\u0434\u0435 \u0430\u0434\u043c\u0438\u043d \u0441\u043f\u0438\u0442 \u0435\u0449\u0435 \u0441 \u043d\u0443\u043b\u0435\u0432\u044b\u0445, \u0434\u043e \u043f\u0430\u0440\u044b \u0434\u0435\u0441\u044f\u0442\u043a\u043e\u0432 VPS. \u0412\u0435\u0440\u0441\u0438\u0438 PHP \u2014 \u043e\u0442 \u0433\u043e\u0440\u0434\u043e\u0433\u043e 8.3 \u043d\u0430 \u0441\u0432\u0435\u0436\u0438\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u0445 \u0434\u043e \u043c\u0443\u0437\u0435\u0439\u043d\u044b\u0445 \u044d\u043a\u0441\u043f\u043e\u043d\u0430\u0442\u043e\u0432.<\/p>\n<p>\u041f\u0435\u0440\u0432\u0430\u044f \u043c\u044b\u0441\u043b\u044c \u0431\u044b\u043b\u0430 \u0440\u0430\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0439: \u00ab<em>\u0417\u0430\u0432\u0442\u0440\u0430 \u0441 \u0443\u0442\u0440\u0430 \u0441\u043f\u043e\u043a\u043e\u0439\u043d\u043e \u043f\u0440\u043e\u043f\u0438\u0448\u0435\u043c \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0432 CI\/CD, \u043f\u0440\u043e\u0433\u043e\u043d\u044f\u0435\u043c \u0442\u0435\u0441\u0442\u044b, \u0432\u044b\u043a\u0430\u0442\u044b\u0432\u0430\u0435\u043c<\/em>\u00bb. \u0412\u0442\u043e\u0440\u0430\u044f \u043c\u044b\u0441\u043b\u044c, \u0431\u043e\u043b\u0435\u0435 \u0447\u0435\u0441\u0442\u043d\u0430\u044f, \u043f\u0440\u0438\u0448\u043b\u0430 \u0447\u0435\u0440\u0435\u0437 \u0441\u0435\u043a\u0443\u043d\u0434\u0443: \u00ab<em>\u0435\u0441\u043b\u0438 \u0434\u044b\u0440\u044b \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0438 \u0441\u0435\u0433\u043e\u0434\u043d\u044f, \u044d\u043a\u0441\u043f\u043b\u043e\u0439\u0442\u044b \u043f\u043e\u044f\u0432\u044f\u0442\u0441\u044f \u0432 \u043f\u0430\u0431\u043b\u0438\u043a\u0435 \u0437\u0430\u0432\u0442\u0440\u0430 \u043a \u043e\u0431\u0435\u0434\u0443<\/em>\u00bb. \u0421\u043f\u0430\u0442\u044c \u044f \u0432 \u0442\u0443 \u043d\u043e\u0447\u044c \u043b\u0435\u0433 \u0432 04:30.<\/p>\n<h3>\u0427\u0442\u043e \u0437\u0430 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438 \u0438 \u043f\u043e\u0447\u0435\u043c\u0443 \u0438\u043c\u0435\u043d\u043d\u043e 8.5.12<\/h3>\n<p>\u0414\u0435\u0442\u0430\u043b\u0435\u0439 CVE \u043d\u0430 \u043c\u043e\u043c\u0435\u043d\u0442 \u0430\u043b\u0435\u0440\u0442\u0430 \u043d\u0435 \u0431\u044b\u043b\u043e. \u0422\u043e\u0447\u043d\u0435\u0435 \u043d\u0435 \u0431\u044b\u043b\u043e \u0443 \u043c\u0435\u043d\u044f. \u0411\u044b\u043b\u043e \u0434\u0440\u0443\u0433\u043e\u0435: PHP Group \u0447\u0435\u0442\u043a\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043b\u0430 \u0432 \u0440\u0435\u043b\u0438\u0437\u0435 \u2014 \u0430\u043f\u0434\u0435\u0439\u0442 \u043a\u0440\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439, \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u043d\u0435\u043c\u0435\u0434\u043b\u0435\u043d\u043d\u043e\u0435 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435.<\/p>\n<p>\u0412 2026 \u0433\u043e\u0434\u0443 PHP 8.5 \u2014 \u044d\u0442\u043e \u0443\u0436\u0435 \u0432\u043f\u043e\u043b\u043d\u0435 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u043c\u0435\u0439\u043d\u0441\u0442\u0440\u0438\u043c, \u043d\u043e \u0432 \u043f\u0440\u043e\u0434\u0430\u043a\u0448\u0435\u043d\u0435 \u043e\u043d \u0441\u0442\u043e\u0438\u0442 \u0434\u0430\u043b\u0435\u043a\u043e \u043d\u0435 \u0432\u0435\u0437\u0434\u0435. \u041c\u043d\u043e\u0433\u0438\u0435 \u043a\u043b\u0438\u0435\u043d\u0442\u044b \u0441\u0438\u0434\u044f\u0442 \u043d\u0430 8.2 \u0438\u043b\u0438 8.3, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u00ab\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u2014 \u043d\u0435 \u0442\u0440\u043e\u0433\u0430\u0439\u00bb. \u0410 \u0443 \u043c\u0435\u043d\u044f \u0432 \u0437\u0430\u043d\u0430\u0447\u043a\u0435 \u0431\u044b\u043b\u0438 \u0442\u0435 \u0441\u0430\u043c\u044b\u0435 32 \u0441\u0430\u0439\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u043e \u0441\u0438\u0445 \u043f\u043e\u0440 \u0434\u044b\u0448\u0430\u043b\u0438 \u043d\u0430 \u043b\u0430\u0434\u0430\u043d \u043f\u043e\u0434 PHP 5.4 \u0438 5.6. <\/p>\n<p>\u042d\u0442\u043e \u0441\u0442\u0430\u0440\u044b\u0435 \u0441\u0430\u043c\u043e\u043f\u0438\u0441\u043d\u044b\u0435 CRM, \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043c\u0430\u0433\u0430\u0437\u0438\u043d\u044b \u043d\u0430 Joomla 1.5 \u0438 \u0444\u043e\u0440\u0443\u043c\u044b \u043d\u0430 vBulletin, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043a\u043b\u0438\u0435\u043d\u0442\u044b \u043e\u0442\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u00ab<em>\u0442\u0430\u043c \u0421\u0422\u041e\u041b\u042c\u041a\u041e \u0432\u0441\u0435\u0433\u043e \u0437\u0430 \u0434\u0435\u0441\u044f\u0442\u044c \u043b\u0435\u0442<\/em>\u00bb. <\/p>\n<p>\u0412\u0430\u0440\u0438\u0430\u043d\u0442 \u00ab\u043f\u0440\u043e\u0441\u0442\u043e \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c\u0441\u044f \u0434\u043e 8.5\u00bb \u0434\u043b\u044f \u043d\u0438\u0445 \u043e\u0437\u043d\u0430\u0447\u0430\u043b \u043c\u0433\u043d\u043e\u0432\u0435\u043d\u043d\u0443\u044e \u0431\u0435\u043b\u0443\u044e \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443. \u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435 mysql_* \u0432\u044b\u0440\u0435\u0437\u0430\u043b\u0438 \u0438\u0437 \u044f\u0434\u0440\u0430 \u0435\u0449\u0435 \u0432 PHP 7.0. \u041b\u044e\u0431\u043e\u0439 \u0432\u044b\u0437\u043e\u0432 mysql_connect() \u0438\u043b\u0438 mysql_query() \u043d\u0430 \u0432\u043e\u0441\u044c\u043c\u0435\u0440\u043a\u0435 \u0440\u043e\u043d\u044f\u0435\u0442 \u0441\u043a\u0440\u0438\u043f\u0442 \u0441 \u0444\u0430\u0442\u0430\u043b\u043e\u043c.<\/p>\n<p>\u042f \u043c\u043e\u043b\u0447\u0443 \u043f\u0440\u043e \u0441\u0442\u0440\u0438\u043a\u0442-\u0442\u0438\u043f\u0438\u0437\u0430\u0446\u0438\u044e \u0438 \u043c\u043d\u043e\u0433\u043e\u0435 \u0434\u0440\u0443\u0433\u043e\u0435, \u0447\u0442\u043e \u0443 8+ \u043f\u043e\u0434 \u043a\u0430\u043f\u043e\u0442\u043e\u043c.<\/p>\n<h3>\u041c\u0430\u0440\u0430\u0444\u043e\u043d \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430: \u0441\u0442\u043e \u0441\u0430\u0439\u0442\u043e\u0432 \u0437\u0430 \u0442\u0440\u043e\u0435 \u0441\u0443\u0442\u043e\u043a<\/h3>\n<p>\u041f\u043b\u0430\u043d \u0431\u044b\u043b \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0438 \u0436\u0435\u0441\u0442\u043e\u043a\u0438\u0439. <\/p>\n<ul>\n<li>\n<p>Shared-\u0445\u043e\u0441\u0442\u0438\u043d\u0433\u0438,      \u0433\u0434\u0435 \u0443 \u043c\u0435\u043d\u044f \u043d\u0435\u0442 \u0440\u0443\u0442\u0430 \u2014 \u0442\u0438\u043a\u0435\u0442\u044b \u0432 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0441 \u043a\u0440\u0438\u043a\u0430\u043c\u0438, \u0441\u043b\u0435\u0437\u0430\u043c\u0438 \u0438\u043b\u0438 \u0443\u0433\u0440\u043e\u0437\u0430\u043c\u0438 &#8212; \u00ab\u0441\u0440\u043e\u0447\u043d\u043e \u043d\u0430\u043a\u0430\u0442\u0438\u0442\u0435 8.5.12\u00bb. \u0412\u044b\u0436\u0438\u043b\u0438 \u043d\u0435 \u0432\u0441\u0435, \u0434\u0432\u0430 \u043f\u0440\u043e\u0432\u0430\u0439\u0434\u0435\u0440\u0430 \u043e\u0442\u0432\u0435\u0442\u0438\u043b\u0438, \u0447\u0442\u043e \u0443 \u043d\u0438\u0445 \u0432 \u043f\u043b\u0430\u043d\u0430\u0445 \u0430\u043f\u0433\u0440\u0435\u0439\u0434 \u043d\u0430 \u0434\u0435\u043a\u0430\u0431\u0440\u044c. \u041f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u044d\u043a\u0441\u0442\u0440\u0435\u043d\u043d\u043e \u043f\u043e\u0434\u043d\u0438\u043c\u0430\u0442\u044c \u0434\u043b\u044f \u043d\u0438\u0445 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b \u043d\u0430 \u0441\u0432\u043e\u0438\u0445 VPS \u0438 \u043f\u0435\u0440\u0435\u043a\u0438\u0434\u044b\u0432\u0430\u0442\u044c DNS.<\/p>\n<\/li>\n<li>\n<p>\u0421\u0432\u043e\u0438      VPS. \u0422\u0443\u0442 \u043f\u043e\u043b\u0435\u0433\u0447\u0435: <code>apt update &amp;&amp; apt install php8.5-cli php8.5-fpm<\/code>. \u041d\u043e \u0434\u044c\u044f\u0432\u043e\u043b, \u043a\u0430\u043a \u043e\u0431\u044b\u0447\u043d\u043e, \u0441\u0438\u0434\u0435\u043b \u0432 <code>php.ini<\/code> \u0438 <code>extension=<\/code>.<\/p>\n<\/li>\n<\/ul>\n<p>\u0410 \u0435\u0449\u0435:<\/p>\n<ul>\n<li>\n<p>\u041e\u0442\u0432\u0430\u043b\u0438\u043b\u0438\u0441\u044c      \u0441\u0442\u0430\u0440\u044b\u0435 <code>IonCube Loader<\/code> \u0434\u043b\u044f PHP 7.4, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0437\u0430\u0447\u0435\u043c-\u0442\u043e \u0442\u044f\u043d\u0443\u043b\u0438 \u0441\u0442\u0430\u0440\u044b\u0435 \u0431\u0438\u043b\u0434\u044b WordPress \u0438 \u041a\u0442\u0443\u043b\u0445\u0443 \u0435\u0433\u043e \u0441\u0437\u043d\u0430\u0435\u0442 \u0447\u0435\u0433\u043e \u0435\u0449\u0435.<\/p>\n<\/li>\n<li>\n<p>\u0421\u043b\u043e\u043c\u0430\u043b\u0441\u044f      <code>mcrypt<\/code> \u043d\u0430 \u043e\u0434\u043d\u043e\u043c \u0434\u0440\u0435\u0432\u043d\u0435\u043c \u0431\u0438\u043b\u043b\u0438\u043d\u0433\u0435 (\u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u0432 \u0442\u0440\u0438 \u0447\u0430\u0441\u0430 \u043d\u043e\u0447\u0438 \u043f\u0438\u0441\u0430\u0442\u044c \u0432\u0440\u0430\u043f\u043f\u0435\u0440 \u0432\u043e\u043a\u0440\u0443\u0433 <code>openssl<\/code>).<\/p>\n<\/li>\n<li>\n<p>Composer \u043d\u0430 \u043f\u0430\u0440\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432 \u0441\u043e\u0448\u0435\u043b \u0441 \u0443\u043c\u0430 \u043e\u0442 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0432 <code>composer.json<\/code> \u0436\u0435\u0441\u0442\u043a\u043e \u043f\u0440\u0438\u0431\u0438\u0442\u043e      <code>\"php\": \"&gt;=5.6, &lt;8.0\"<\/code>. \u041f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u043c\u0430\u0441\u0441\u043e\u0432\u043e \u0440\u0435\u0437\u0430\u0442\u044c \u044d\u0442\u0438 \u0441\u0442\u0440\u043e\u043a\u0438 \u0447\u0435\u0440\u0435\u0437 <code>sed<\/code>.<\/p>\n<\/li>\n<li>\n<p>Deprecated-\u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u044f \u043e\u0442 <code>create_function()<\/code> \u0438 \u043d\u0435\u044f\u0432\u043d\u044b\u0445 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u0438\u0439 \u0442\u0438\u043f\u043e\u0432 \u0437\u0430\u0431\u0438\u043b\u0438 \u043b\u043e\u0433\u0438 \u0442\u0430\u043a, \u0447\u0442\u043e \u0440\u043e\u0442\u0430\u0446\u0438\u044f \u043d\u0435 \u0441\u043f\u0440\u0430\u0432\u043b\u044f\u043b\u0430\u0441\u044c.<\/p>\n<\/li>\n<\/ul>\n<p>\u0418\u0437 \u0441\u043e\u0442\u043d\u0438 \u0441\u0430\u0439\u0442\u043e\u0432 68 \u043f\u043e\u0434\u043d\u044f\u043b\u0438\u0441\u044c \u043d\u0430 8.5.12 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0441\u043c\u0435\u043d\u044b \u0432\u0435\u0440\u0441\u0438\u0438 \u0432 FPM \u0438 \u043b\u0435\u0433\u043a\u043e\u0439 \u043f\u0440\u0430\u0432\u043a\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u043e\u0432, \u043d\u0443 \u0438 \u043f\u0430\u0440\u044b \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0439 \u0432 \u0441\u0430\u043c\u0438\u0445 \u0441\u043a\u0440\u0438\u043f\u0442\u0430\u0445. \u042d\u0442\u043e \u0431\u044b\u043b\u0438 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u0432\u0435\u0436\u0438\u0435 WordPress, Laravel, OpenCart \u0438 \u0441\u0430\u043c\u043e\u043f\u0438\u0441\u044b. \u042f \u043f\u0440\u043e\u0433\u043e\u043d\u044f\u043b \u0438\u0445 \u0447\u0435\u0440\u0435\u0437 <code>grep -R \"mysql_\"<\/code>, \u0447\u0442\u043e\u0431\u044b \u0443\u0436 \u0443\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f \u043e\u043a\u043e\u043d\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u043e. \u2014 \u0447\u0438\u0441\u0442\u043e.<\/p>\n<p>\u041e\u0441\u0442\u0430\u0432\u0448\u0438\u0435\u0441\u044f 32 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u043f\u0440\u0438 \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u043d\u0430 \u0432\u043e\u0441\u044c\u043c\u0435\u0440\u043a\u0443 \u0432\u044b\u0434\u0430\u0432\u0430\u043b\u0438 <em>Fatal error: Uncallable function mysql_connect()<\/em> \u0438 \u043c\u043d\u043e\u0433\u043e-\u043c\u043d\u043e\u0433\u043e \u0447\u0435\u0433\u043e \u0435\u0449\u0435\u2026<\/p>\n<h3>\u041f\u043e\u0447\u0435\u043c\u0443 \u043d\u0435\u043b\u044c\u0437\u044f \u00ab\u043f\u0440\u043e\u0441\u0442\u043e \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u0442\u044c\u00bb<\/h3>\n<p><code>mysql_*<\/code> \u2014 \u044d\u0442\u043e \u043f\u0440\u043e\u043a\u043b\u044f\u0442\u0438\u0435 \u043b\u0435\u0433\u0430\u0441\u0438. \u0412 \u044d\u0442\u0438\u0445 32 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <code>mysql_connect, mysql_query, mysql_fetch_assoc<\/code> \u0440\u0430\u0437\u043c\u0430\u0437\u0430\u043d\u044b \u043f\u043e \u0441\u043e\u0442\u043d\u044f\u043c \u0444\u0430\u0439\u043b\u043e\u0432. \u0413\u0434\u0435-\u0442\u043e \u043e\u043d\u0438 \u043e\u0431\u0435\u0440\u043d\u0443\u0442\u044b \u0432 \u0441\u0432\u043e\u0438 \u043a\u043b\u0430\u0441\u0441\u044b, \u0433\u0434\u0435-\u0442\u043e \u0432\u044b\u0437\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u0432 \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u043d\u043e\u043c \u043b\u0430\u043f\u0448\u0435-\u043a\u043e\u0434\u0435. <\/p>\n<p>\u041f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u0442\u044c \u044d\u0442\u043e \u043d\u0430 <code>PDO<\/code> \u0438\u043b\u0438 \u0445\u043e\u0442\u044f \u0431\u044b <code>mysqli<\/code> \u0437\u0430 \u043d\u0435\u0434\u0435\u043b\u044e? \u041c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e. \u0412 \u043e\u0434\u043d\u043e\u043c \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0435 \u0441\u0442\u0430\u0440\u043e\u0439 \u043b\u043e\u0433\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u0431\u044b\u043b\u043e 400+ \u0432\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u0439 <code>mysql_query<\/code>. \u0414\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u0442\u0440\u0430\u0442\u0438\u0442\u044c \u043d\u0430 \u0437\u0430\u043c\u0435\u043d\u0443 \u043e\u0434\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0441 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0434\u0432\u0435 \u043c\u0438\u043d\u0443\u0442\u044b (\u0447\u0442\u043e \u043e\u0447\u0435\u043d\u044c \u043e\u043f\u0442\u0438\u043c\u0438\u0441\u0442\u0438\u0447\u043d\u043e, \u0430\u0433\u0430), \u044d\u0442\u043e 800 \u043c\u0438\u043d\u0443\u0442\u044b \u0447\u0438\u0441\u0442\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438. \u041f\u043e\u0447\u0442\u0438 14 \u0447\u0430\u0441\u043e\u0432 \u043d\u0430 \u043e\u0434\u0438\u043d \u043f\u0440\u043e\u0435\u043a\u0442. \u0410 \u0438\u0445 32. \u0418 \u044d\u0442\u043e \u043d\u0435 \u0441\u0447\u0438\u0442\u0430\u044f \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u044b\u0432\u0430\u043d\u0438\u044f \u043b\u043e\u0433\u0438\u043a\u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u0448\u0438\u0431\u043e\u043a, \u0442\u0430\u043a \u043a\u0430\u043a <code>PDO<\/code> \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043a\u0438\u0434\u0430\u0435\u0442 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f, \u0430 \u0441\u0442\u0430\u0440\u044b\u0439 \u043a\u043e\u0434 \u0436\u0434\u0435\u0442, \u0447\u0442\u043e <code>mysql_query()<\/code> \u043f\u0440\u043e\u0441\u0442\u043e \u043c\u043e\u043b\u0447\u0430 \u0432\u0435\u0440\u043d\u0435\u0442 <code>false<\/code>. <\/p>\n<p>\u0414\u0430\u0443\u043d\u0442\u0430\u0439\u043c \u043d\u0430 \u0434\u0432\u0435 \u043d\u0435\u0434\u0435\u043b\u0438, \u043f\u043e\u043a\u0430 \u044f \u0431\u0443\u0434\u0443 \u0432 \u043e\u0434\u043d\u043e \u043b\u0438\u0446\u043e \u0440\u0430\u0437\u0433\u0440\u0435\u0431\u0430\u0442\u044c \u044d\u0442\u043e\u0442 \u0441\u043f\u0430\u0433\u0435\u0442\u0442\u0438-\u043a\u043e\u0434, \u043a\u043b\u0438\u0435\u043d\u0442 \u043d\u0435 \u043e\u043f\u043b\u0430\u0442\u0438\u0442. \u0410 \u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u0438\u0445 \u043d\u0430 PHP 5.6, \u043a\u043e\u0433\u0434\u0430 \u0432 \u0441\u0435\u0442\u0438 \u0443\u0436\u0435 \u043a\u0440\u0443\u0442\u044f\u0442 PoC \u0434\u043b\u044f \u0441\u0432\u0435\u0436\u0438\u0445 CVE \u2014 \u044d\u0442\u043e \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u0442\u044c \u0430\u043a\u0442 \u043e \u043f\u0440\u043e\u0444\u0435\u0441\u0441\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u043c \u0441\u0430\u043c\u043e\u0443\u0431\u0438\u0439\u0441\u0442\u0432\u0435.<\/p>\n<p>\u0410 \u0437\u043d\u0430\u0447\u0438\u0442, \u043d\u0443\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0441\u0442\u0430\u0440\u044b\u0439 \u043a\u043e\u0434 \u043d\u0430 \u043d\u043e\u0432\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u0431\u0435\u0437 \u043f\u0440\u0430\u0432\u043e\u043a \u0441\u0430\u043c\u043e\u0433\u043e \u043a\u043e\u0434\u0430.<\/p>\n<h3>\u0410\u043d\u0430\u0442\u043e\u043c\u0438\u044f \u00ab\u0442\u0430\u0431\u043b\u0435\u0442\u043a\u0438\u00bb: mysql-tablet.php<\/h3>\n<p>\u042f \u043d\u0435 \u043f\u0435\u0440\u0432\u044b\u0439, \u043a\u0442\u043e \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441 \u044d\u0442\u043e\u0439 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043e\u0439, \u043d\u043e \u0433\u043e\u0442\u043e\u0432\u044b\u0435 \u0432\u0440\u0430\u043f\u043f\u0435\u0440\u044b \u0432\u0440\u043e\u0434\u0435 <code>mysqlnd-uh<\/code> \u0438\u043b\u0438 <code>mysqli_compat<\/code> \u0447\u0430\u0441\u0442\u043e \u0442\u044f\u043d\u0443\u0442 \u043b\u0438\u0448\u043d\u044e\u044e \u043c\u0430\u0433\u0438\u044e, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043d\u0430 PHP 8.5 \u0432\u0435\u0434\u0435\u0442 \u0441\u0435\u0431\u044f \u043d\u0435\u043f\u0440\u0435\u0434\u0441\u043a\u0430\u0437\u0443\u0435\u043c\u043e.<\/p>\n<p>\u041c\u043d\u0435 \u043d\u0443\u0436\u0435\u043d \u0431\u044b\u043b <strong><em>\u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0442\u0443\u043f\u043e\u0439, \u043f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u044b\u0439<\/em><\/strong> \u0441\u043b\u043e\u0439. \u041e\u0434\u0438\u043d \u0444\u0430\u0439\u043b, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u043d\u043a\u043b\u0443\u0434\u0438\u0442\u0441\u044f \u0432 <code>auto_prepend_file<\/code> \u0432 <code>php.ini <\/code>\u0438\u043b\u0438 .<code>user.ini<\/code>, \u043d\u0443 \u0438\u043b\u0438 \u0432\u043e\u043e\u0431\u0449\u0435 \u043f\u0440\u043e\u0441\u0442\u043e \u0432 \u0441\u043a\u0440\u0438\u043f\u0442.<\/p>\n<p>\u042f \u043d\u0430\u0437\u0432\u0430\u043b \u0435\u0433\u043e <code>mysql-tablet.php<\/code>. \u0418\u0434\u0435\u044f \u043f\u0440\u043e\u0441\u0442\u0430\u044f: \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c, \u043d\u0435 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u044b \u043b\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <code>mysql_*<\/code> (\u0432\u0434\u0440\u0443\u0433 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0447\u0443\u0434\u0438\u0442 \u0438 \u043e\u0441\u0442\u0430\u0432\u0438\u043b \u0438\u0445 \u0434\u043b\u044f \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438), \u0438 \u0435\u0441\u043b\u0438 \u043d\u0435\u0442 \u2014 \u043e\u0431\u044a\u044f\u0432\u0438\u0442\u044c \u0438\u0445 \u043f\u043e\u0432\u0435\u0440\u0445 <code>mysqli<\/code>. <\/p>\n<p>\u0412\u043e\u0442 \u043a\u0430\u043a \u044d\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043f\u043e\u0434 \u043a\u0430\u043f\u043e\u0442\u043e\u043c.<\/p>\n<h4>1. \u0417\u0430\u0442\u044b\u043a\u0430\u0435\u043c \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b<\/h4>\n<p>\u041b\u0435\u0433\u0430\u0441\u0438-\u043a\u043e\u0434 2012 \u0433\u043e\u0434\u0430 \u043d\u0435 \u0437\u043d\u0430\u0435\u0442 \u043f\u0440\u043e <code>try-catch<\/code>. \u0415\u0441\u043b\u0438 <code>mysqli <\/code>\u043f\u0440\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0438 \u0441\u043b\u043e\u0432\u0438\u0442 \u043e\u0448\u0438\u0431\u043a\u0443, \u043e\u043d \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0431\u0440\u043e\u0441\u0438\u0442 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435. \u0421\u0442\u0430\u0440\u044b\u0439 <code>if (!$link) <\/code>\u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u0441\u043a\u0440\u0438\u043f\u0442 \u0443\u043c\u0440\u0435\u0442 \u043d\u0435\u043a\u0440\u0430\u0441\u0438\u0432\u043e.<\/p>\n<pre><code>if (function_exists('mysqli_report') &amp;&amp; defined('MYSQLI_REPORT_OFF')) { \u00a0\u00a0\u00a0 mysqli_report(MYSQLI_REPORT_OFF); }<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper\"><\/span><\/a><\/div><\/pre>\n<p>\u042d\u0442\u0430 \u0441\u0442\u0440\u043e\u043a\u0430 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0438\u0442 <code>mysqli<\/code> \u0432 \u0442\u0438\u0445\u0438\u0439 \u0440\u0435\u0436\u0438\u043c. \u0422\u0435\u043f\u0435\u0440\u044c \u043e\u043d \u0432\u0435\u0434\u0435\u0442 \u0441\u0435\u0431\u044f \u043a\u0430\u043a \u0441\u0442\u0430\u0440\u044b\u0439 <code>mysql<\/code>: \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 <code>false <\/code>\u0438 \u043f\u0438\u0448\u0435\u0442 \u043e\u0448\u0438\u0431\u043a\u0443 \u0432 \u0441\u0432\u043e\u0439 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439 \u043b\u043e\u0433, \u0430 \u043d\u0435 \u0440\u043e\u043d\u044f\u0435\u0442 \u0441\u043a\u0440\u0438\u043f\u0442.<\/p>\n<p>\u0414\u0430\u043b\u044c\u0448\u0435 \u2014 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b \u0442\u0438\u043f\u043e\u0432 \u0432\u044b\u0431\u043e\u0440\u043a\u0438. \u0412 \u043a\u043e\u0434\u0435 \u0432\u0435\u0437\u0434\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e <code>mysql_fetch_array($res, MYSQL_ASSOC)<\/code>. \u0412 PHP 8.5 \u044d\u0442\u0438 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b \u043d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e, \u0435\u0441\u043b\u0438 \u043d\u0435 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043e \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435 <code>mysql<\/code>. \u041f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u043e\u0431\u044a\u044f\u0432\u0438\u0442\u044c \u0438\u0445 \u0432\u0440\u0443\u0447\u043d\u0443\u044e, \u043c\u0430\u043f\u043f\u044f \u043d\u0430 <code>MYSQLI_*<\/code>:<\/p>\n<pre><code>if (!defined('MYSQL_ASSOC')) { \u00a0\u00a0\u00a0 define('MYSQL_ASSOC', defined('MYSQLI_ASSOC') ? MYSQLI_ASSOC : 1); }<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<h4>2. \u041c\u0430\u0433\u0438\u044f mysql_connect<\/h4>\n<p>\u0424\u0443\u043d\u043a\u0446\u0438\u044f <code>mysql_connect()<\/code> \u0438\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0438 \u0443\u043c\u0435\u0435\u0442 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0442\u044c \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e <code>localhost<\/code>, \u043d\u043e \u0438 <code>hostname:3306, :\/tmp\/mysql.sock<\/code> \u0438 \u0434\u0430\u0436\u0435 <code>p:hostname<\/code> \u0434\u043b\u044f \u043f\u0435\u0440\u0441\u0438\u0441\u0442\u0435\u043d\u0442\u043d\u044b\u0445 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439. \u041c\u043e\u0439 \u0441\u043b\u043e\u0439 \u0434\u043e\u043b\u0436\u0435\u043d \u044d\u0442\u043e \u0440\u0430\u0441\u043f\u0430\u0440\u0441\u0438\u0442\u044c \u0438 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u0432 <code>mysqli_real_connect<\/code>.<\/p>\n<pre><code>function mysql_connect($server, $username, $password, $new_link = false, $client_flags = 0)        {            try {                if (!function_exists('mysqli_init')) {                    return false;                }                $host = (string) $server;                $port = null;                $socket = null;                $persistentPrefix = '';                if (str_starts_with($host, 'p:')) {                    $persistentPrefix = 'p:';                    $host = substr($host, 2);                }                if ($host === '') {                    $host = 'localhost';                } elseif (str_starts_with($host, ':')) {                    $socket = substr($host, 1);                    $host = 'localhost';                } elseif (str_contains($host, ':')) {                    [$hostname, $extra] = explode(':', $host, 2);                    if ($hostname !== '') {                        $host = $hostname;                    }                    if ($extra !== '') {                        if ($extra[0] === '\/') {                            $socket = $extra;                        } else {                            $port = (int) $extra;                        }                    }                }                $host = $persistentPrefix . $host;                $link = mysqli_init();                if (!$link instanceof mysqli) {                    return false;                }                $ok = @mysqli_real_connect(                    $link,                    $host,                    (string) $username,                    (string) $password,                    null,                    $port,                    $socket,                    (int) $client_flags                );                if (!$ok) {                    $GLOBALS['mysql_oldstyle_connect_errno'] = function_exists('mysqli_connect_errno')                        ? mysqli_connect_errno()                        : 0;                    $GLOBALS['mysql_oldstyle_connect_error'] = function_exists('mysqli_connect_error')                        ? mysqli_connect_error()                        : '';                    return false;                }                $GLOBALS['mysql_oldstyle_link'] = $link;                $GLOBALS['mysql_oldstyle_connect_errno'] = 0;                $GLOBALS['mysql_oldstyle_connect_error'] = '';                return $link;            } catch (Throwable $e) {                $GLOBALS['mysql_oldstyle_connect_errno'] = (int) $e-&gt;getCode();                $GLOBALS['mysql_oldstyle_connect_error'] = $e-&gt;getMessage();                return false;            }        }<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u00a0\u041f\u043e\u0447\u0435\u043c\u0443 \u043b\u0438\u043d\u043a \u043a\u043b\u0430\u0434\u0435\u0442\u0441\u044f \u0432 <code>$GLOBALS['mysql_oldstyle_link']<\/code>? \u041f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0432 \u0441\u0442\u0430\u0440\u043e\u043c \u043a\u043e\u0434\u0435 \u0447\u0430\u0441\u0442\u043e \u043e\u043f\u0443\u0441\u043a\u0430\u044e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 <code>$link<\/code> \u0432 \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u0445, \u043f\u043e\u043b\u0430\u0433\u0430\u044f\u0441\u044c \u043d\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u043e\u0442\u043a\u0440\u044b\u0442\u043e\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435. \u0413\u043b\u043e\u0431\u0430\u043b \u2014 \u0433\u0440\u044f\u0437\u043d\u043e, \u043d\u043e \u044d\u0442\u043e \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u0437\u0430\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u043d\u044b\u0439 \u043a\u043e\u0434 15-\u043b\u0435\u0442\u043d\u0435\u0439 \u0434\u0430\u0432\u043d\u043e\u0441\u0442\u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0431\u0435\u0437 \u044f\u0432\u043d\u043e\u0439 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0445\u0435\u043d\u0434\u043b\u0430.<\/p>\n<h4>3. Fetch-\u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0438 \u0441\u0442\u0440\u043e\u0433\u0430\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430 false<\/h4>\n<p>\u042d\u0442\u043e \u0441\u0430\u043c\u044b\u0439 \u0442\u043e\u043d\u043a\u0438\u0439 \u043c\u043e\u043c\u0435\u043d\u0442, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043b\u043e\u043c\u0430\u0435\u0442\u0441\u044f \u0431\u043e\u043b\u044c\u0448\u0430\u044f \u043f\u043e\u043b\u043e\u0432\u0438\u043d\u0430 \u043b\u0435\u0433\u0430\u0441\u0438. \u0412 \u0441\u0442\u0430\u0440\u043e\u043c <code>mysql_fetch_assoc()<\/code> \u043f\u0440\u0438 \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u0438 \u043a\u043e\u043d\u0446\u0430 \u0432\u044b\u0431\u043e\u0440\u043a\u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u043b\u0441\u044f <code>false<\/code>. \u0412 <code>mysqli_fetch_assoc() <\/code>\u043f\u0440\u0438 \u043f\u0443\u0441\u0442\u043e\u043c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f <code>null<\/code>.<\/p>\n<p>\u041a\u043e\u0434 \u0432\u0438\u0434\u0430 <code>while ($row = mysql_fetch_assoc($res)) { ... }<\/code> \u043d\u0430 <code>null <\/code>\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. \u041d\u043e \u043a\u043e\u0434 \u0432\u0438\u0434\u0430 <code>if ($row === false) { \/* \u043a\u0430\u043a\u0430\u044f-\u0442\u043e \u0441\u043f\u0435\u0446-\u043b\u043e\u0433\u0438\u043a\u0430 *\/ } <\/code>\u043d\u0430 <code>null <\/code>\u043f\u0430\u0434\u0430\u0435\u0442. <\/p>\n<p>\u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432 \u0442\u0430\u0431\u043b\u0435\u0442\u043a\u0435 \u044f \u043f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0443\u044e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442:<\/p>\n<pre><code>function mysql_fetch_assoc($res) {\u00a0\u00a0\u00a0 if (!$res instanceof mysqli_result) {\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 return false;\u00a0\u00a0\u00a0 }\u00a0\u00a0\u00a0 $row = mysqli_fetch_assoc($res);\u00a0\u00a0 \u00a0return $row === null ? false : $row; }<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u0422\u043e \u0436\u0435 \u0441\u0430\u043c\u043e\u0435 \u0441\u0434\u0435\u043b\u0430\u043d\u043e \u0434\u043b\u044f <code>mysql_fetch_row<\/code> \u0438 <code>mysql_fetch_array<\/code>. \u041c\u044b \u043e\u0431\u043c\u0430\u043d\u044b\u0432\u0430\u0435\u043c \u0441\u0442\u0430\u0440\u044b\u0439 \u043a\u043e\u0434, \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u044f \u0435\u043c\u0443 \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u044b\u0439 <code>false <\/code>\u0432\u043c\u0435\u0441\u0442\u043e <code>null<\/code>.<\/p>\n<h4>4. \u041e\u0448\u0438\u0431\u043a\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f<\/h4>\n<p>\u0415\u0441\u043b\u0438 <code>mysql_connect()<\/code> \u0443\u043f\u0430\u043b, \u0441\u0442\u0430\u0440\u044b\u0439 \u043a\u043e\u0434 \u043f\u043e\u043b\u0435\u0437\u0435\u0442 \u0432 <code>mysql_errno()<\/code> \u0438 <code>mysql_error()<\/code>. \u041d\u043e \u0435\u0441\u043b\u0438 \u043c\u044b \u043d\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u043b\u0438 \u043e\u0448\u0438\u0431\u043a\u0443 \u0432 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435, \u044d\u0442\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0432\u0435\u0440\u043d\u0443\u0442 \u043f\u0443\u0441\u0442\u043e\u0442\u0443.<\/p>\n<pre><code>if (!$ok) { \u00a0\u00a0\u00a0 $GLOBALS['mysql_oldstyle_connect_errno'] = function_exists('mysqli_connect_errno') ? mysqli_connect_errno() : 0;\u00a0\u00a0\u00a0 $GLOBALS['mysql_oldstyle_connect_error'] = function_exists('mysqli_connect_error') ? mysqli_connect_error() : ''; return false; }<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u0410 \u0441\u0430\u043c\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 <code>mysql_errno()<\/code> \u0438 <code>mysql_error()<\/code> \u0442\u0435\u043f\u0435\u0440\u044c \u043f\u0440\u043e\u0441\u0442\u043e \u0447\u0438\u0442\u0430\u044e\u0442 \u044d\u0442\u0438 \u0433\u043b\u043e\u0431\u0430\u043b\u044b, \u0435\u0441\u043b\u0438 \u0438\u043c \u043d\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u043b\u0438 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0439 \u043b\u0438\u043d\u043a.<\/p>\n<h3>\u0413\u0440\u0430\u0431\u043b\u0438 \u0438 \u0447\u0435\u0441\u0442\u043d\u044b\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f<\/h3>\n<p>\u0421\u0440\u0430\u0437\u0443 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0430\u044e: <code>mysql-tablet.php<\/code> \u2014 \u044d\u0442\u043e \u043d\u0435 \u043f\u0430\u043d\u0430\u0446\u0435\u044f. \u042d\u0442\u043e \u043c\u043e\u0440\u0444\u0438\u0439, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0434\u043e\u0442\u0430\u0449\u0438\u0442\u044c \u0440\u0430\u043d\u0435\u043d\u043e\u0433\u043e \u0434\u043e \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439, \u0430 \u043d\u0435 \u0432\u044b\u0440\u0430\u0441\u0442\u0438\u0442\u044c \u0435\u043c\u0443 \u043d\u043e\u0432\u0443\u044e \u043d\u043e\u0433\u0443.<\/p>\n<blockquote>\n<p><strong>\u041e\u0431\u0440\u0430\u0442\u0438\u0442\u044c \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435:<\/strong> \u0415\u0441\u043b\u0438 \u0432 \u043a\u043e\u0434\u0435 \u043e\u0442\u043a\u0440\u044b\u0442\u043e \u0434\u0432\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0447\u0435\u0440\u0435\u0437 <code>mysql_connect()<\/code> \u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0432\u044b\u0437\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0431\u0435\u0437 \u044f\u0432\u043d\u043e\u0433\u043e \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u044f \u043b\u0438\u043d\u043a\u0430, \u0442\u0430\u0431\u043b\u0435\u0442\u043a\u0430 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u043c \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c. \u0412 95% \u0441\u043b\u0443\u0447\u0430\u0435\u0432 \u043b\u0435\u0433\u0430\u0441\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442 \u043e\u0434\u0438\u043d \u043b\u0438\u043d\u043a, \u043d\u043e \u044f \u0443\u0436\u0435 \u0441\u043b\u043e\u0432\u0438\u043b \u043f\u0430\u0440\u0443 \u044d\u043a\u0437\u043e\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0441\u0438\u0441\u0442\u0435\u043c, \u0433\u0434\u0435 \u044d\u0442\u043e \u043b\u043e\u043c\u0430\u043b\u043e\u0441\u044c.<\/p>\n<\/blockquote>\n<p>\u0415\u0449\u0435 \u043d\u0443\u0436\u043d\u043e \u043e\u0431\u0440\u0430\u0442\u0438\u0442\u044c \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435 \u043d\u0430:<\/p>\n<ul>\n<li>\n<p><strong>\u041f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043e\u0448\u0438\u0431\u043e\u043a.<\/strong> \u041c\u044b \u0432\u044b\u043a\u043b\u044e\u0447\u0438\u043b\u0438 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0432 <code>mysqli<\/code>, \u043d\u043e \u0441\u0430\u043c\u0438 <code>mysql_*<\/code> \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0432\u043d\u0443\u0442\u0440\u0438 \u0442\u0430\u0431\u043b\u0435\u0442\u043a\u0438 \u0432\u0441\u0435 \u0440\u0430\u0432\u043d\u043e \u043c\u043e\u0433\u0443\u0442 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0442\u044c <code>false <\/code>\u0442\u0430\u043c, \u0433\u0434\u0435 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u043d\u0430 PHP 5.6 \u043c\u043e\u0433 \u0432\u0435\u0440\u043d\u0443\u0442\u044c \u0440\u0435\u0441\u0443\u0440\u0441 \u0441 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435\u043c. \u041b\u043e\u0433\u0438 FPM \u0432 \u043f\u0435\u0440\u0432\u0443\u044e \u043d\u043e\u0447\u044c \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u043b\u0438 \u043a\u0430\u043a \u043d\u043e\u0432\u043e\u0433\u043e\u0434\u043d\u044f\u044f \u0435\u043b\u043a\u0430.<\/p>\n<\/li>\n<li>\n<p><strong>\u0411\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c.<\/strong> \u0421\u0430\u043c\u043e\u0435 \u0432\u0430\u0436\u043d\u043e\u0435. \u042d\u0442\u0430 \u0442\u0430\u0431\u043b\u0435\u0442\u043a\u0430 \u041d\u0415 \u043b\u0435\u0447\u0438\u0442 SQL-\u0438\u043d\u044a\u0435\u043a\u0446\u0438\u0438. \u0415\u0441\u043b\u0438 \u0432 \u0442\u043e\u043c \u0441\u0430\u043c\u043e\u043c \u043a\u043e\u0434\u0435 2012 \u0433\u043e\u0434\u0430 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f <code>$id <\/code>\u0438\u0437 <code>$_GET<\/code> \u0431\u0435\u0437 \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0438 \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0432 <code>mysql_query(\"SELECT * FROM users WHERE id = $id\")<\/code>, \u043e\u043d\u0430 \u043e\u0441\u0442\u0430\u043d\u0435\u0442\u0441\u044f \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0439. \u041c\u044b \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u0435\u0440\u0435\u043d\u0435\u0441\u043b\u0438 \u0434\u044b\u0440\u0443 \u043d\u0430 \u043d\u043e\u0432\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440. <\/p>\n<\/li>\n<li>\n<p><strong>\u041f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c.<\/strong> \u041c\u0438\u043a\u0440\u043e\u0441\u0435\u043a\u0443\u043d\u0434\u044b \u043d\u0430\u043a\u043b\u0430\u0434\u043d\u044b\u0445 \u0440\u0430\u0441\u0445\u043e\u0434\u043e\u0432 \u043d\u0430 \u0432\u0440\u0430\u043f\u043f\u0435\u0440. \u041d\u0430 \u0441\u043e\u0442\u043d\u0435 \u0441\u0430\u0439\u0442\u043e\u0432 \u044d\u0442\u043e \u043d\u0435\u0437\u0430\u043c\u0435\u0442\u043d\u043e, \u043d\u043e \u043f\u043e\u0434 \u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u043e\u0439 \u044f \u0431\u044b \u0434\u0435\u0441\u044f\u0442\u044c \u0440\u0430\u0437 \u043f\u043e\u0434\u0443\u043c\u0430\u043b.<\/p>\n<\/li>\n<\/ul>\n<p>\u0418 \u0442\u0430\u043a. \u0421\u0430\u0439\u0442\u044b \u0436\u0438\u0432\u0443\u0442. \u0423\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438 \u0437\u0430\u043a\u0440\u044b\u0442\u044b. \u0423 \u043c\u0435\u043d\u044f \u0435\u0441\u0442\u044c 6\u201312 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u043f\u043e\u043a\u043e\u0439\u043d\u043e\u0439 \u0436\u0438\u0437\u043d\u0438, \u0447\u0442\u043e\u0431\u044b \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u0438\u0437 \u044d\u0442\u0438\u0445 32 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432 \u0432\u044b\u043f\u0438\u043b\u0438\u0442\u044c <code>mysql-tablet.php<\/code> \u0438 \u043f\u0435\u0440\u0435\u0432\u0435\u0441\u0442\u0438 \u043a\u043e\u0434, \u0445\u043e\u0442\u044f \u0431\u044b, \u043d\u0430 <code>mysqli<\/code> \u0441 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u043c\u0438 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f\u043c\u0438. \u0411\u0443\u0434\u0443 \u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u043e \u0441\u043f\u0440\u0438\u043d\u0442\u0430\u043c\u0438. \u0421\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e, \u043f\u043e \u043e\u0434\u043d\u043e\u043c\u0443-\u0434\u0432\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0443 \u0432 \u043c\u0435\u0441\u044f\u0446.<\/p>\n<h3>\u0427\u0442\u043e \u0432 \u0438\u0442\u043e\u0433\u0435<\/h3>\n<p>\u041d\u0430 \u043a\u0430\u043b\u0435\u043d\u0434\u0430\u0440\u0435 24 \u043e\u043a\u0442\u044f\u0431\u0440\u044f. \u0412\u0441\u0435 ~100 \u0441\u0430\u0439\u0442\u043e\u0432 \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u043d\u0430 PHP 8.5.12. 32 \u043b\u0435\u0433\u0430\u0441\u0438-\u0437\u043e\u043c\u0431\u0438 \u043f\u043e\u0434\u043d\u044f\u043b\u0438\u0441\u044c \u043d\u0430 \u0442\u0430\u0431\u043b\u0435\u0442\u043a\u0435 \u0437\u0430 20 \u043c\u0438\u043d\u0443\u0442 \u0434\u0435\u043f\u043b\u043e\u044f.<\/p>\n<p>\u041f\u043e\u0447\u0442\u0438 \u0432\u043e \u0432\u0441\u0435\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u0445, \u0431\u044b\u043b\u0438 \u0444\u0430\u0439\u043b\u044b \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0449\u0438\u0435\u0441\u044f \u0441 <code>&lt;?<\/code> , \u0430 \u043d\u0435 \u0441 <code>&lt;?php<\/code>. \u0421\u0442\u0440\u0430\u043d\u043d\u043e. \u0418 \u0432\u0435\u0434\u044c \u044f \u0441\u0430\u043c \u044d\u0442\u043e, \u0432 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u0435 \u0441\u043b\u0443\u0447\u0430\u0435\u0432, \u043f\u0438\u0441\u0430\u043b \u0438 \u0434\u0430\u0436\u0435 \u043d\u0435 \u043e\u0431\u0440\u0430\u0449\u0430\u043b \u043d\u0430 \u044d\u0442\u043e \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u044f. \u0410 \u043d\u0430 PHP 8.5.12 \u044d\u0442\u043e \u0432\u0430\u0436\u043d\u043e.<\/p>\n<p>\u041a\u043e\u043d\u0435\u0447\u043d\u043e \u0436\u0435 <code>null<\/code>, \u043a\u043e\u0442\u043e\u0440\u044b\u043c PHP 8+ \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e \u0434\u0430\u0432\u0438\u0442\u044c\u0441\u044f. \u0411\u043b\u0430\u0433\u043e, \u0442\u0430\u043a\u0438\u0445 \u043c\u0435\u0441\u0442 \u0431\u044b\u043b\u043e \u043d\u0435 \u043c\u043d\u043e\u0433\u043e \u0438 \u043e\u043d\u0438 \u0431\u044b\u043b\u0438 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u044b \u0440\u0443\u0447\u043a\u0430\u043c\u0438 \u0437\u0430 \u043a\u043e\u0440\u043e\u0442\u043a\u043e\u0435 \u0432\u0440\u0435\u043c\u044f. \u041d\u043e, \u043f\u0430\u0440\u0443 \u0441\u0435\u0434\u044b\u0445 \u0432\u043e\u043b\u043e\u0441, \u043c\u043d\u0435 \u043e\u043d\u0438 \u043f\u0440\u0438\u0431\u0430\u0432\u0438\u043b\u0438 \u0432\u0441\u0435 \u0436\u0435.<\/p>\n<p>\u0418 \u043a\u043e\u043d\u0435\u0447\u043d\u043e \u0436\u0435 <code>count()<\/code>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432\u0441\u0442\u0440\u0435\u0442\u0438\u043b\u0441\u044f \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0437, \u043d\u043e \u0442\u043e\u0436\u0435 \u0431\u044b\u043b \u043f\u043e\u0434\u043f\u0435\u0440\u0442 \u043a\u043e\u0441\u0442\u044b\u043b\u0435\u043c \u0438\u0437 <code>?? []<\/code> \u0438 \u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u0432\u043f\u043e\u043a\u043e\u0435.<\/p>\n<p>\u0412 \u0446\u0435\u043b\u043e\u043c, \u0432\u0441\u0435 \u043f\u0440\u043e\u0448\u043b\u043e, \u0445\u043e\u0442\u044c \u0438 \u043d\u0435\u0440\u0432\u043e\u0437\u043d\u043e, \u043d\u043e \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u043e. \u042f \u043e\u0436\u0438\u0434\u0430\u043b \u043d\u0430\u043c\u043d\u043e\u0433\u043e \u0431\u043e\u043b\u044c\u0448\u0435\u0433\u043e \u0443\u0436\u0430\u0441\u0430 \u0438 \u043c\u0440\u0430\u043a\u0430, \u0447\u0435\u043c \u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u0432 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438.<\/p>\n<p>\u0427\u0435\u0433\u043e \u0438 \u0432\u0430\u043c \u0436\u0435\u043b\u0430\u044e!<\/p>\n<p>\u00a0<\/p>\n<p>\u041d\u0443 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0432\u043e\u0442 \u043f\u043e\u043b\u043d\u044b\u0439 \u043a\u043e\u0434 \u0422\u0430\u0431\u043b\u0435\u0442\u043a\u0438:<\/p>\n<pre><code>&lt;?php\/** * mysql-tablet.php \u2014 \u0441\u043b\u043e\u0439 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0434\u043b\u044f \u043b\u0435\u0433\u0430\u0441\u0438-\u0444\u0443\u043d\u043a\u0446\u0438\u0439 mysql_*. * * \u0412\u043e\u0441\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 API \u0443\u0434\u0430\u043b\u0451\u043d\u043d\u043e\u0433\u043e \u0432 PHP 7.0 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u044f ext\/mysql, * \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u044f \u0435\u0433\u043e \u043f\u043e\u0432\u0435\u0440\u0445 mysqli. \u041f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u0441\u0442\u0430\u0440\u044b\u0439 \u043a\u043e\u0434 \u0431\u0435\u0437 \u043f\u0440\u0430\u0432\u043e\u043a * \u043d\u0430 PHP 8.x, \u0432\u043a\u043b\u044e\u0447\u0430\u044f 8.5. * * \u0422\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f: *  - PHP &gt;= 8.0 (\u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f str_starts_with() \u0438 str_contains()); *  - \u0432\u043a\u043b\u044e\u0447\u0451\u043d\u043d\u043e\u0435 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435 mysqli. * * \u041f\u043e\u0431\u043e\u0447\u043d\u044b\u0435 \u044d\u0444\u0444\u0435\u043a\u0442\u044b \u043f\u0440\u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u0444\u0430\u0439\u043b\u0430: *  - \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0440\u0435\u0436\u0438\u043c \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439 mysqli (MYSQLI_REPORT_OFF); *  - \u043e\u0431\u044a\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b MYSQL_ASSOC, MYSQL_NUM, MYSQL_BOTH; *  - \u043e\u0431\u044a\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0438 mysql_*, \u0435\u0441\u043b\u0438 \u043e\u043d\u0438 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u0432 \u044f\u0434\u0440\u0435. * * \u0412\u041d\u0418\u041c\u0410\u041d\u0418\u0415: \u0444\u0430\u0439\u043b \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u00ab\u043a\u043e\u0441\u0442\u044b\u043b\u0451\u043c\u00bb \u0434\u043b\u044f \u043b\u0435\u0433\u0430\u0441\u0438-\u043a\u043e\u0434\u0430 \u0438 \u043d\u0435 \u0437\u0430\u0449\u0438\u0449\u0430\u0435\u0442 * \u043e\u0442 SQL-\u0438\u043d\u044a\u0435\u043a\u0446\u0438\u0439, \u0443\u0436\u0435 \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u0432 \u044d\u0442\u043e\u043c \u043a\u043e\u0434\u0435. * * @package MysqlTablet * @author  \u0421\u0435\u0440\u0433\u0435\u0439 \u0410\u0431\u0440\u0430\u043c\u043e\u0432 \u0438 \u041c\u0430\u043a\u0441-\u043a\u0430\u043d\u0430\u043b \"\u0412\u0435\u0431 \u041c\u0430\u0441\u0442\u0435\u0440\u0441\u043a\u0430\u044f\" * @version 1.0.0 * @see     https:\/\/www.php.net\/manual\/ru\/book.mysqli.php * @see     https:\/\/www.php.net\/manual\/ru\/book.mysql.php *\/\/** * \u041e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u0432\u044b\u0431\u0440\u043e\u0441 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439 mysqli. * * \u041b\u0435\u0433\u0430\u0441\u0438-\u043a\u043e\u0434 \u043e\u0436\u0438\u0434\u0430\u0435\u0442 \u00ab\u0442\u0438\u0445\u0438\u0439\u00bb \u0432\u043e\u0437\u0432\u0440\u0430\u0442 false \u0438 \u0440\u0443\u0447\u043d\u0443\u044e \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u043e\u0448\u0438\u0431\u043e\u043a * \u0447\u0435\u0440\u0435\u0437 mysql_errno() \/ mysql_error(), \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0440\u0435\u0436\u0438\u043c \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0439 * (\u0432\u043a\u043b\u044e\u0447\u0451\u043d \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0432 PHP 8.1+) \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u043e\u0433\u0430\u0441\u0438\u0442\u044c. *\/if (function_exists('mysqli_report') &amp;&amp; defined('MYSQLI_REPORT_OFF')) {    mysqli_report(MYSQLI_REPORT_OFF);}\/** * \u042d\u043c\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u0443 ext\/mysql MYSQL_ASSOC (\u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u0432\u044b\u0431\u043e\u0440\u043a\u0430). * * \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0431\u0435\u0440\u0451\u0442\u0441\u044f \u0438\u0437 MYSQLI_ASSOC; \u043f\u0440\u0438 \u0435\u0433\u043e \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f * \u0438\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0447\u0438\u0441\u043b\u043e\u0432\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 1. *\/if (!defined('MYSQL_ASSOC')) {    define('MYSQL_ASSOC', defined('MYSQLI_ASSOC') ? MYSQLI_ASSOC : 1);}\/** * \u042d\u043c\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u0443 ext\/mysql MYSQL_NUM (\u043d\u0443\u043c\u0435\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0432\u044b\u0431\u043e\u0440\u043a\u0430). * * \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0431\u0435\u0440\u0451\u0442\u0441\u044f \u0438\u0437 MYSQLI_NUM; \u043f\u0440\u0438 \u0435\u0433\u043e \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f * \u0438\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0447\u0438\u0441\u043b\u043e\u0432\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 2. *\/if (!defined('MYSQL_NUM')) {    define('MYSQL_NUM', defined('MYSQLI_NUM') ? MYSQLI_NUM : 2);}\/** * \u042d\u043c\u0443\u043b\u0438\u0440\u0443\u0435\u0442 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u0443 ext\/mysql MYSQL_BOTH (\u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u0430\u044f + \u043d\u0443\u043c\u0435\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0432\u044b\u0431\u043e\u0440\u043a\u0430). * * \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0431\u0435\u0440\u0451\u0442\u0441\u044f \u0438\u0437 MYSQLI_BOTH; \u043f\u0440\u0438 \u0435\u0433\u043e \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f * \u0438\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0447\u0438\u0441\u043b\u043e\u0432\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 3. *\/if (!defined('MYSQL_BOTH')) {    define('MYSQL_BOTH', defined('MYSQLI_BOTH') ? MYSQLI_BOTH : 3);}\/** * \u0411\u043b\u043e\u043a \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0444\u0443\u043d\u043a\u0446\u0438\u0439-\u0437\u0430\u0433\u043b\u0443\u0448\u0435\u043a. * * \u0424\u0443\u043d\u043a\u0446\u0438\u0438 \u043e\u0431\u044a\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u0438 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0438 \u043e\u0434\u043d\u043e\u0438\u043c\u0451\u043d\u043d\u044b\u0445 \u0432 \u044f\u0434\u0440\u0435 * (\u0442\u043e \u0435\u0441\u0442\u044c \u043d\u0430 PHP &gt;= 7.0, \u0433\u0434\u0435 ext\/mysql \u0443\u0434\u0430\u043b\u0435\u043d\u043e). \u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 * function_exists() \u0437\u0430\u0449\u0438\u0449\u0430\u0435\u0442 \u043e\u0442 \u0444\u0430\u0442\u0430\u043b\u044c\u043d\u043e\u0439 \u043e\u0448\u0438\u0431\u043a\u0438 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e\u0433\u043e \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u0438\u044f. *\/if (!function_exists('mysql_connect')) {    \/**     * \u041e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0441 MySQL-\u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c (\u044d\u043c\u0443\u043b\u044f\u0446\u0438\u044f mysql_connect()).     *     * \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0438\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0444\u043e\u0440\u043c\u0430\u0442\u044b \u0441\u0442\u0440\u043e\u043a\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0430:     *  - \u00abhost:port\u00bb \u2014 \u044f\u0432\u043d\u043e\u0435 \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u0435 \u043f\u043e\u0440\u0442\u0430;     *  - \u00ab:\/path\/to\/socket\u00bb \u0438\u043b\u0438 \u00abhost:\/path\/to\/socket\u00bb \u2014 UNIX-\u0441\u043e\u043a\u0435\u0442;     *  - \u043f\u0440\u0435\u0444\u0438\u043a\u0441 \u00abp:\u00bb \u2014 \u043f\u0435\u0440\u0441\u0438\u0441\u0442\u0435\u043d\u0442\u043d\u043e\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435.     *     * \u0423\u0441\u043f\u0435\u0448\u043d\u043e\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u0432 $GLOBALS['mysql_oldstyle_link']     * \u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u043c\u0438 \u043a\u0430\u043a \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e.     * \u041e\u0448\u0438\u0431\u043a\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0444\u0438\u043a\u0441\u0438\u0440\u0443\u044e\u0442\u0441\u044f \u0432 $GLOBALS['mysql_oldstyle_connect_errno']     * \u0438 $GLOBALS['mysql_oldstyle_connect_error'] \u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b \u0447\u0435\u0440\u0435\u0437     * mysql_errno() \/ mysql_error(). \u0418\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043d\u0430\u0440\u0443\u0436\u0443 \u043d\u0435 \u043f\u0440\u043e\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u044e\u0442\u0441\u044f.     *     * @param  string $server       \u0425\u043e\u0441\u0442 \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u043e\u043f\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e \u00ab:\u043f\u043e\u0440\u0442\u00bb, \u00ab:\/\u043f\u0443\u0442\u044c\/\u043a\/\u0441\u043e\u043a\u0435\u0442\u0443\u00bb \u0438\/\u0438\u043b\u0438 \u043f\u0440\u0435\u0444\u0438\u043a\u0441 \u00abp:\u00bb.     * @param  string $username     \u0418\u043c\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f MySQL.     * @param  string $password     \u041f\u0430\u0440\u043e\u043b\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f MySQL.     * @param  bool   $new_link     \u041d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f; \u0441\u043e\u0445\u0440\u0430\u043d\u0451\u043d \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441\u0438\u0433\u043d\u0430\u0442\u0443\u0440\u044b.     * @param  int    $client_flags \u0411\u0438\u0442\u043e\u0432\u0430\u044f \u043c\u0430\u0441\u043a\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u0438\u0445 \u0444\u043b\u0430\u0433\u043e\u0432 mysqli (MYSQLI_CLIENT_*).     *     * @return mysqli|false \u041e\u0431\u044a\u0435\u043a\u0442 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043b\u0438\u0431\u043e false \u043f\u0440\u0438 \u043e\u0448\u0438\u0431\u043a\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f.     *     * @global mysqli|null $mysql_oldstyle_link           \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e ($GLOBALS['mysql_oldstyle_link']).     * @global int         $mysql_oldstyle_connect_errno  \u041a\u043e\u0434 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439 \u043e\u0448\u0438\u0431\u043a\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f ($GLOBALS['mysql_oldstyle_connect_errno']).     * @global string      $mysql_oldstyle_connect_error  \u0422\u0435\u043a\u0441\u0442 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439 \u043e\u0448\u0438\u0431\u043a\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f ($GLOBALS['mysql_oldstyle_connect_error']).     *     * @deprecated \u0422\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441 \u043b\u0435\u0433\u0430\u0441\u0438; \u0432 \u043d\u043e\u0432\u043e\u043c \u043a\u043e\u0434\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 mysqli \u0438\u043b\u0438 PDO.     * @see        mysqli_real_connect()     *\/    function mysql_connect($server, $username, $password, $new_link = false, $client_flags = 0)    {        try {            if (!function_exists('mysqli_init')) {                return false;            }            $host = (string) $server;            $port = null;            $socket = null;            $persistentPrefix = '';            \/\/ \u041f\u0440\u0435\u0444\u0438\u043a\u0441 \u00abp:\u00bb \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u043f\u0435\u0440\u0441\u0438\u0441\u0442\u0435\u043d\u0442\u043d\u043e\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0432 mysqli.            if (str_starts_with($host, 'p:')) {                $persistentPrefix = 'p:';                $host = substr($host, 2);            }            \/\/ \u0420\u0430\u0437\u0431\u043e\u0440 \u0438\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0444\u043e\u0440\u043c\u0430\u0442\u043e\u0432 \u0441\u0442\u0440\u043e\u043a\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 ext\/mysql.            if ($host === '') {                $host = 'localhost';            } elseif (str_starts_with($host, ':')) {                $socket = substr($host, 1);                $host = 'localhost';            } elseif (str_contains($host, ':')) {                [$hostname, $extra] = explode(':', $host, 2);                if ($hostname !== '') {                    $host = $hostname;                }                if ($extra !== '') {                    if ($extra[0] === '\/') {                        $socket = $extra;   \/\/ \u0412\u0441\u0451, \u0447\u0442\u043e \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u0441 \u00ab\/\u00bb, \u2014 \u043f\u0443\u0442\u044c \u043a \u0441\u043e\u043a\u0435\u0442\u0443.                    } else {                        $port = (int) $extra; \/\/ \u0418\u043d\u0430\u0447\u0435 \u2014 \u043d\u043e\u043c\u0435\u0440 \u043f\u043e\u0440\u0442\u0430.                    }                }            }            $host = $persistentPrefix . $host;            $link = mysqli_init();            if (!$link instanceof mysqli) {                return false;            }            \/\/ \u00ab@\u00bb \u0433\u043b\u0443\u0448\u0438\u0442 warning'\u0438: \u043b\u0435\u0433\u0430\u0441\u0438 \u0441\u0430\u043c\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442 \u043e\u0448\u0438\u0431\u043a\u0438 \u0447\u0435\u0440\u0435\u0437 mysql_errno().            $ok = @mysqli_real_connect(                $link,                $host,                (string) $username,                (string) $password,                null,                $port,                $socket,                (int) $client_flags            );            if (!$ok) {                $GLOBALS['mysql_oldstyle_connect_errno'] = function_exists('mysqli_connect_errno')                    ? mysqli_connect_errno()                    : 0;                $GLOBALS['mysql_oldstyle_connect_error'] = function_exists('mysqli_connect_error')                    ? mysqli_connect_error()                    : '';                return false;            }            $GLOBALS['mysql_oldstyle_link'] = $link;            $GLOBALS['mysql_oldstyle_connect_errno'] = 0;            $GLOBALS['mysql_oldstyle_connect_error'] = '';            return $link;        } catch (Throwable $e) {            $GLOBALS['mysql_oldstyle_connect_errno'] = (int) $e-&gt;getCode();            $GLOBALS['mysql_oldstyle_connect_error'] = $e-&gt;getMessage();            return false;        }    }    \/**     * \u0412\u044b\u0431\u0438\u0440\u0430\u0435\u0442 \u0431\u0430\u0437\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0434\u043b\u044f \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f (\u044d\u043c\u0443\u043b\u044f\u0446\u0438\u044f mysql_select_db()).     *     * @param  string        $database_name \u0418\u043c\u044f \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445.     * @param  mysqli|null   $link          \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435; null \u2014 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0438\u0437 $GLOBALS.     *     * @return bool true \u043f\u0440\u0438 \u0443\u0441\u043f\u0435\u0445\u0435, false \u043f\u0440\u0438 \u043e\u0448\u0438\u0431\u043a\u0435 \u0438\u043b\u0438 \u043d\u0435\u0432\u0430\u043b\u0438\u0434\u043d\u043e\u043c \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0438.     *     * @global mysqli|null $mysql_oldstyle_link \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e ($GLOBALS['mysql_oldstyle_link']).     *     * @deprecated \u0422\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441 \u043b\u0435\u0433\u0430\u0441\u0438; \u0432 \u043d\u043e\u0432\u043e\u043c \u043a\u043e\u0434\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 mysqli \u0438\u043b\u0438 PDO.     * @see        mysqli_select_db()     *\/    function mysql_select_db($database_name, $link = null)    {        if ($link === null) {            $link = $GLOBALS['mysql_oldstyle_link'] ?? null;        }        if (!$link instanceof mysqli) {            return false;        }        return mysqli_select_db($link, (string) $database_name);    }    \/**     * \u0412\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u0442 SQL-\u0437\u0430\u043f\u0440\u043e\u0441 (\u044d\u043c\u0443\u043b\u044f\u0446\u0438\u044f mysql_query()).     *     * @param  string      $sql  \u0422\u0435\u043a\u0441\u0442 SQL-\u0437\u0430\u043f\u0440\u043e\u0441\u0430.     * @param  mysqli|null $link \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435; null \u2014 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0438\u0437 $GLOBALS.     *     * @return mysqli_result|bool \u041e\u0431\u044a\u0435\u043a\u0442 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0434\u043b\u044f SELECT-\u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432,     *                            true \u0434\u043b\u044f \u0443\u0441\u043f\u0435\u0448\u043d\u044b\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0431\u0435\u0437 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430,     *                            false \u043f\u0440\u0438 \u043e\u0448\u0438\u0431\u043a\u0435 \u0438\u043b\u0438 \u043d\u0435\u0432\u0430\u043b\u0438\u0434\u043d\u043e\u043c \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0438.     *     * @global mysqli|null $mysql_oldstyle_link \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e ($GLOBALS['mysql_oldstyle_link']).     *     * @deprecated \u0422\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441 \u043b\u0435\u0433\u0430\u0441\u0438; \u0432 \u043d\u043e\u0432\u043e\u043c \u043a\u043e\u0434\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 mysqli \u0438\u043b\u0438 PDO.     * @see        mysqli_query()     *\/    function mysql_query($sql, $link = null)    {        if ($link === null) {            $link = $GLOBALS['mysql_oldstyle_link'] ?? null;        }        if (!$link instanceof mysqli) {            return false;        }        return mysqli_query($link, (string) $sql);    }    \/**     * \u0412\u044b\u0431\u0438\u0440\u0430\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0432 \u0432\u0438\u0434\u0435 \u043d\u0443\u043c\u0435\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0430 (\u044d\u043c\u0443\u043b\u044f\u0446\u0438\u044f mysql_fetch_row()).     *     * \u0412 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 mysqli_fetch_row() \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 false \u0432\u043c\u0435\u0441\u0442\u043e null \u043f\u0440\u0438 \u0432\u044b\u0445\u043e\u0434\u0435     * \u0437\u0430 \u043a\u043e\u043d\u0435\u0446 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u2014 \u0438\u043c\u0435\u043d\u043d\u043e \u043d\u0430 \u0442\u0430\u043a\u043e\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d \u043b\u0435\u0433\u0430\u0441\u0438-\u043a\u043e\u0434.     *     * @param  mysqli_result|mixed $res \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0437\u0430\u043f\u0440\u043e\u0441\u0430, \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0451\u043d\u043d\u044b\u0439 mysql_query().     *     * @return array&lt;int, string|null&gt;|false \u0421\u0442\u0440\u043e\u043a\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u043b\u0438\u0431\u043e false, \u0435\u0441\u043b\u0438 \u0441\u0442\u0440\u043e\u043a \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0435\u0442     *                                       \u0438\u043b\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u043d \u043d\u0435-\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442.     *     * @deprecated \u0422\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441 \u043b\u0435\u0433\u0430\u0441\u0438; \u0432 \u043d\u043e\u0432\u043e\u043c \u043a\u043e\u0434\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 mysqli \u0438\u043b\u0438 PDO.     * @see        mysqli_fetch_row()     *\/    function mysql_fetch_row($res)    {        if (!$res instanceof mysqli_result) {            return false;        }        $row = mysqli_fetch_row($res);        return $row === null ? false : $row;    }    \/**     * \u0412\u044b\u0431\u0438\u0440\u0430\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0432 \u0432\u0438\u0434\u0435 \u0430\u0441\u0441\u043e\u0446\u0438\u0430\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u043c\u0430\u0441\u0441\u0438\u0432\u0430 (\u044d\u043c\u0443\u043b\u044f\u0446\u0438\u044f mysql_fetch_assoc()).     *     * \u0412 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 mysqli_fetch_assoc() \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 false \u0432\u043c\u0435\u0441\u0442\u043e null \u043f\u0440\u0438 \u0432\u044b\u0445\u043e\u0434\u0435     * \u0437\u0430 \u043a\u043e\u043d\u0435\u0446 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430.     *     * @param  mysqli_result|mixed $res \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0437\u0430\u043f\u0440\u043e\u0441\u0430, \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0451\u043d\u043d\u044b\u0439 mysql_query().     *     * @return array&lt;string, string|null&gt;|false \u0421\u0442\u0440\u043e\u043a\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u043b\u0438\u0431\u043e false, \u0435\u0441\u043b\u0438 \u0441\u0442\u0440\u043e\u043a \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0435\u0442     *                                          \u0438\u043b\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u043d \u043d\u0435-\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442.     *     * @deprecated \u0422\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441 \u043b\u0435\u0433\u0430\u0441\u0438; \u0432 \u043d\u043e\u0432\u043e\u043c \u043a\u043e\u0434\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 mysqli \u0438\u043b\u0438 PDO.     * @see        mysqli_fetch_assoc()     *\/    function mysql_fetch_assoc($res)    {        if (!$res instanceof mysqli_result) {            return false;        }        $row = mysqli_fetch_assoc($res);        return $row === null ? false : $row;    }    \/**     * \u0412\u044b\u0431\u0438\u0440\u0430\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0432 \u0437\u0430\u0434\u0430\u043d\u043d\u043e\u043c \u0444\u043e\u0440\u043c\u0430\u0442\u0435 (\u044d\u043c\u0443\u043b\u044f\u0446\u0438\u044f mysql_fetch_array()).     *     * \u0418\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b MYSQL_ASSOC \/ MYSQL_NUM \/ MYSQL_BOTH \u043f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u043e     * \u043e\u0442\u043e\u0431\u0440\u0430\u0436\u0430\u044e\u0442\u0441\u044f \u043d\u0430 MYSQLI_ASSOC \/ MYSQLI_NUM \/ MYSQLI_BOTH.     * \u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 false \u0432\u043c\u0435\u0441\u0442\u043e null \u043f\u0440\u0438 \u0432\u044b\u0445\u043e\u0434\u0435 \u0437\u0430 \u043a\u043e\u043d\u0435\u0446 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430.     *     * @param  mysqli_result|mixed $res         \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0437\u0430\u043f\u0440\u043e\u0441\u0430, \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0451\u043d\u043d\u044b\u0439 mysql_query().     * @param  int|null            $result_type \u041e\u0434\u043d\u0430 \u0438\u0437 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442 MYSQL_ASSOC, MYSQL_NUM, MYSQL_BOTH;     *                                          null \u044d\u043a\u0432\u0438\u0432\u0430\u043b\u0435\u043d\u0442\u0435\u043d MYSQL_BOTH.     *     * @return array&lt;int|string, string|null&gt;|false \u0421\u0442\u0440\u043e\u043a\u0430 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u043b\u0438\u0431\u043e false, \u0435\u0441\u043b\u0438 \u0441\u0442\u0440\u043e\u043a \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0435\u0442     *                                               \u0438\u043b\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u043d \u043d\u0435-\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442.     *     * @deprecated \u0422\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441 \u043b\u0435\u0433\u0430\u0441\u0438; \u0432 \u043d\u043e\u0432\u043e\u043c \u043a\u043e\u0434\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 mysqli \u0438\u043b\u0438 PDO.     * @see        mysqli_fetch_array()     *\/    function mysql_fetch_array($res, $result_type = null)    {        if (!$res instanceof mysqli_result) {            return false;        }        if ($result_type === null) {            $result_type = MYSQL_BOTH;        }        $result_type = (int) $result_type;        \/\/ \u041c\u0430\u043f\u043f\u0438\u043d\u0433 \u0438\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442 ext\/mysql \u043d\u0430 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b mysqli.        $map = [            MYSQL_ASSOC =&gt; MYSQLI_ASSOC,            MYSQL_NUM   =&gt; MYSQLI_NUM,            MYSQL_BOTH  =&gt; MYSQLI_BOTH,        ];        $mode = $map[$result_type] ?? MYSQLI_BOTH;        $row = mysqli_fetch_array($res, $mode);        return $row === null ? false : $row;    }    \/**     * \u0412\u044b\u0431\u0438\u0440\u0430\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430 \u0432 \u0432\u0438\u0434\u0435 \u043e\u0431\u044a\u0435\u043a\u0442\u0430 (\u044d\u043c\u0443\u043b\u044f\u0446\u0438\u044f mysql_fetch_object()).     *     * \u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 false \u0432\u043c\u0435\u0441\u0442\u043e null \u043f\u0440\u0438 \u0432\u044b\u0445\u043e\u0434\u0435 \u0437\u0430 \u043a\u043e\u043d\u0435\u0446 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430.     * \u041e\u0448\u0438\u0431\u043a\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u0430 \u043a\u043b\u0430\u0441\u0441\u0430 \u043f\u0435\u0440\u0435\u0445\u0432\u0430\u0442\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0438 \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u0438\u0432\u043e\u0434\u044f\u0442 \u043a false.     *     * @param  mysqli_result|mixed $res       \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0437\u0430\u043f\u0440\u043e\u0441\u0430, \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0451\u043d\u043d\u044b\u0439 mysql_query().     * @param  string              $classname \u0418\u043c\u044f \u043a\u043b\u0430\u0441\u0441\u0430 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u043e\u0431\u044a\u0435\u043a\u0442\u0430.     * @param  array&lt;int, mixed&gt;   $params    \u0410\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u044b \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u043e\u0440\u0430 \u043a\u043b\u0430\u0441\u0441\u0430.     *     * @return object|false \u042d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440 $classname \u0441 \u043f\u043e\u043b\u044f\u043c\u0438 \u0441\u0442\u0440\u043e\u043a\u0438 \u043b\u0438\u0431\u043e false, \u0435\u0441\u043b\u0438 \u0441\u0442\u0440\u043e\u043a \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0435\u0442,     *                      \u043f\u0435\u0440\u0435\u0434\u0430\u043d \u043d\u0435-\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0438\u043b\u0438 \u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043e\u0431\u044a\u0435\u043a\u0442.     *     * @deprecated \u0422\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441 \u043b\u0435\u0433\u0430\u0441\u0438; \u0432 \u043d\u043e\u0432\u043e\u043c \u043a\u043e\u0434\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 mysqli \u0438\u043b\u0438 PDO.     * @see        mysqli_fetch_object()     *\/    function mysql_fetch_object($res, $classname = 'stdClass', $params = [])    {        if (!$res instanceof mysqli_result) {            return false;        }        try {            $object = mysqli_fetch_object(                $res,                (string) $classname,                (array) $params            );        } catch (Throwable $e) {            return false;        }        return $object === null ? false : $object;    }    \/**     * \u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0447\u0438\u0441\u043b\u043e \u0441\u0442\u0440\u043e\u043a, \u0437\u0430\u0442\u0440\u043e\u043d\u0443\u0442\u044b\u0445 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u043c \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u043c (\u044d\u043c\u0443\u043b\u044f\u0446\u0438\u044f mysql_affected_rows()).     *     * @param  mysqli|null $link \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435; null \u2014 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0438\u0437 $GLOBALS.     *     * @return int \u0427\u0438\u0441\u043b\u043e \u0437\u0430\u0442\u0440\u043e\u043d\u0443\u0442\u044b\u0445 \u0441\u0442\u0440\u043e\u043a; -1 \u043f\u0440\u0438 \u043e\u0448\u0438\u0431\u043a\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 \u0438\u043b\u0438 \u043d\u0435\u0432\u0430\u043b\u0438\u0434\u043d\u043e\u043c \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0438.     *     * @global mysqli|null $mysql_oldstyle_link \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e ($GLOBALS['mysql_oldstyle_link']).     *     * @deprecated \u0422\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441 \u043b\u0435\u0433\u0430\u0441\u0438; \u0432 \u043d\u043e\u0432\u043e\u043c \u043a\u043e\u0434\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 mysqli \u0438\u043b\u0438 PDO.     * @see        mysqli_affected_rows()     *\/    function mysql_affected_rows($link = null)    {        if ($link === null) {            $link = $GLOBALS['mysql_oldstyle_link'] ?? null;        }        if (!$link instanceof mysqli) {            return -1;        }        return mysqli_affected_rows($link);    }    \/**     * \u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 ID \u0441\u0442\u0440\u043e\u043a\u0438, \u0432\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0439 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u043c \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u043c (\u044d\u043c\u0443\u043b\u044f\u0446\u0438\u044f mysql_insert_id()).     *     * @param  mysqli|null $link \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435; null \u2014 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0438\u0437 $GLOBALS.     *     * @return int|string ID \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439 \u0432\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438 (string \u0434\u043b\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 BIGINT);     *                    0 \u043f\u0440\u0438 \u043d\u0435\u0432\u0430\u043b\u0438\u0434\u043d\u043e\u043c \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0438.     *     * @global mysqli|null $mysql_oldstyle_link \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e ($GLOBALS['mysql_oldstyle_link']).     *     * @deprecated \u0422\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441 \u043b\u0435\u0433\u0430\u0441\u0438; \u0432 \u043d\u043e\u0432\u043e\u043c \u043a\u043e\u0434\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 mysqli \u0438\u043b\u0438 PDO.     * @see        mysqli_insert_id()     *\/    function mysql_insert_id($link = null)    {        if ($link === null) {            $link = $GLOBALS['mysql_oldstyle_link'] ?? null;        }        if (!$link instanceof mysqli) {            return 0;        }        return mysqli_insert_id($link);    }    \/**     * \u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u043a\u043e\u0434 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439 \u043e\u0448\u0438\u0431\u043a\u0438 (\u044d\u043c\u0443\u043b\u044f\u0446\u0438\u044f mysql_errno()).     *     * \u0415\u0441\u043b\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0438\u043b\u0438 \u043d\u0435\u0432\u0430\u043b\u0438\u0434\u043d\u043e, \u043e\u0442\u0434\u0430\u0451\u0442 \u043a\u043e\u0434 \u043e\u0448\u0438\u0431\u043a\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f,     * \u0441\u043e\u0445\u0440\u0430\u043d\u0451\u043d\u043d\u044b\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439 mysql_connect() \u0432 $GLOBALS.     *     * @param  mysqli|null $link \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435; null \u2014 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0438\u0437 $GLOBALS.     *     * @return int \u041a\u043e\u0434 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439 \u043e\u0448\u0438\u0431\u043a\u0438; 0, \u0435\u0441\u043b\u0438 \u043e\u0448\u0438\u0431\u043e\u043a \u043d\u0435 \u0431\u044b\u043b\u043e.     *     * @global mysqli|null $mysql_oldstyle_link          \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e ($GLOBALS['mysql_oldstyle_link']).     * @global int         $mysql_oldstyle_connect_errno \u041a\u043e\u0434 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439 \u043e\u0448\u0438\u0431\u043a\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f ($GLOBALS['mysql_oldstyle_connect_errno']).     *     * @deprecated \u0422\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441 \u043b\u0435\u0433\u0430\u0441\u0438; \u0432 \u043d\u043e\u0432\u043e\u043c \u043a\u043e\u0434\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 mysqli \u0438\u043b\u0438 PDO.     * @see        mysqli_errno()     *\/    function mysql_errno($link = null)    {        if ($link === null) {            $link = $GLOBALS['mysql_oldstyle_link'] ?? null;        }        if (!$link instanceof mysqli) {            return (int) ($GLOBALS['mysql_oldstyle_connect_errno'] ?? 0);        }        return mysqli_errno($link);    }    \/**     * \u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0442\u0435\u043a\u0441\u0442 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439 \u043e\u0448\u0438\u0431\u043a\u0438 (\u044d\u043c\u0443\u043b\u044f\u0446\u0438\u044f mysql_error()).     *     * \u0415\u0441\u043b\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0438\u043b\u0438 \u043d\u0435\u0432\u0430\u043b\u0438\u0434\u043d\u043e, \u043e\u0442\u0434\u0430\u0451\u0442 \u0442\u0435\u043a\u0441\u0442 \u043e\u0448\u0438\u0431\u043a\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f,     * \u0441\u043e\u0445\u0440\u0430\u043d\u0451\u043d\u043d\u044b\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0435\u0439 mysql_connect() \u0432 $GLOBALS.     *     * @param  mysqli|null $link \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435; null \u2014 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0438\u0437 $GLOBALS.     *     * @return string \u0422\u0435\u043a\u0441\u0442 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439 \u043e\u0448\u0438\u0431\u043a\u0438; \u043f\u0443\u0441\u0442\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430, \u0435\u0441\u043b\u0438 \u043e\u0448\u0438\u0431\u043e\u043a \u043d\u0435 \u0431\u044b\u043b\u043e.     *     * @global mysqli|null $mysql_oldstyle_link          \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e ($GLOBALS['mysql_oldstyle_link']).     * @global string      $mysql_oldstyle_connect_error \u0422\u0435\u043a\u0441\u0442 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439 \u043e\u0448\u0438\u0431\u043a\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f ($GLOBALS['mysql_oldstyle_connect_error']).     *     * @deprecated \u0422\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441 \u043b\u0435\u0433\u0430\u0441\u0438; \u0432 \u043d\u043e\u0432\u043e\u043c \u043a\u043e\u0434\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 mysqli \u0438\u043b\u0438 PDO.     * @see        mysqli_error()     *\/    function mysql_error($link = null)    {        if ($link === null) {            $link = $GLOBALS['mysql_oldstyle_link'] ?? null;        }        if (!$link instanceof mysqli) {            return (string) ($GLOBALS['mysql_oldstyle_connect_error'] ?? '');        }        return mysqli_error($link);    }    \/**     * \u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0447\u0438\u0441\u043b\u043e \u0441\u0442\u0440\u043e\u043a \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u0430 (\u044d\u043c\u0443\u043b\u044f\u0446\u0438\u044f mysql_num_rows()).     *     * @param  mysqli_result|mixed $res \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0437\u0430\u043f\u0440\u043e\u0441\u0430, \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0451\u043d\u043d\u044b\u0439 mysql_query().     *     * @return int|false \u0427\u0438\u0441\u043b\u043e \u0441\u0442\u0440\u043e\u043a \u0432 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043b\u0438\u0431\u043e false, \u0435\u0441\u043b\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u043d \u043d\u0435-\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442.     *     * @deprecated \u0422\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441 \u043b\u0435\u0433\u0430\u0441\u0438; \u0432 \u043d\u043e\u0432\u043e\u043c \u043a\u043e\u0434\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 mysqli \u0438\u043b\u0438 PDO.     * @see        mysqli_num_rows()     *\/    function mysql_num_rows($res)    {        if (!$res instanceof mysqli_result) {            return false;        }        return mysqli_num_rows($res);    }    \/**     * \u041e\u0441\u0432\u043e\u0431\u043e\u0436\u0434\u0430\u0435\u0442 \u043f\u0430\u043c\u044f\u0442\u044c, \u0437\u0430\u043d\u044f\u0442\u0443\u044e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u043c \u0437\u0430\u043f\u0440\u043e\u0441\u0430 (\u044d\u043c\u0443\u043b\u044f\u0446\u0438\u044f mysql_free_result()).     *     * @param  mysqli_result|mixed $res \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0437\u0430\u043f\u0440\u043e\u0441\u0430, \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0451\u043d\u043d\u044b\u0439 mysql_query().     *     * @return bool true, \u0435\u0441\u043b\u0438 \u043f\u0430\u043c\u044f\u0442\u044c \u043e\u0441\u0432\u043e\u0431\u043e\u0436\u0434\u0435\u043d\u0430; false, \u0435\u0441\u043b\u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u043d \u043d\u0435-\u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442.     *     * @deprecated \u0422\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441 \u043b\u0435\u0433\u0430\u0441\u0438; \u0432 \u043d\u043e\u0432\u043e\u043c \u043a\u043e\u0434\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 mysqli \u0438\u043b\u0438 PDO.     * @see        mysqli_free_result()     *\/    function mysql_free_result($res)    {        if (!$res instanceof mysqli_result) {            return false;        }        mysqli_free_result($res);        return true;    }    \/**     * \u0417\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u0442 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c (\u044d\u043c\u0443\u043b\u044f\u0446\u0438\u044f mysql_close()).     *     * \u0415\u0441\u043b\u0438 \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u043e\u043d\u043e \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u0434\u0430\u043b\u044f\u0435\u0442\u0441\u044f     * \u0438\u0437 $GLOBALS, \u0447\u0442\u043e\u0431\u044b \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438 \u00ab\u043c\u0451\u0440\u0442\u0432\u044b\u0439\u00bb \u043b\u0438\u043d\u043a.     * \u0417\u0430\u043a\u0440\u044b\u0442\u0438\u0435 \u043d\u0435\u0432\u0430\u043b\u0438\u0434\u043d\u043e\u0433\u043e \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u0443\u0441\u043f\u0435\u0448\u043d\u044b\u043c (true), \u043a\u0430\u043a \u0432 ext\/mysql.     *     * @param  mysqli|null $link \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435; null \u2014 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0438\u0437 $GLOBALS.     *     * @return bool true \u043f\u0440\u0438 \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u043c \u0437\u0430\u043a\u0440\u044b\u0442\u0438\u0438 (\u0438\u043b\u0438 \u043d\u0435\u0432\u0430\u043b\u0438\u0434\u043d\u043e\u043c \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0438), false \u043f\u0440\u0438 \u043e\u0448\u0438\u0431\u043a\u0435.     *     * @global mysqli|null $mysql_oldstyle_link \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e ($GLOBALS['mysql_oldstyle_link']).     *     * @deprecated \u0422\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441 \u043b\u0435\u0433\u0430\u0441\u0438; \u0432 \u043d\u043e\u0432\u043e\u043c \u043a\u043e\u0434\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 mysqli \u0438\u043b\u0438 PDO.     * @see        mysqli_close()     *\/    function mysql_close($link = null)    {        if ($link === null) {            $link = $GLOBALS['mysql_oldstyle_link'] ?? null;        }        if (!$link instanceof mysqli) {            return true;        }        $result = mysqli_close($link);        if (isset($GLOBALS['mysql_oldstyle_link']) &amp;&amp; $GLOBALS['mysql_oldstyle_link'] === $link) {            unset($GLOBALS['mysql_oldstyle_link']);        }        return $result;    }    \/**     * \u042d\u043a\u0440\u0430\u043d\u0438\u0440\u0443\u0435\u0442 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0435 \u0441\u0438\u043c\u0432\u043e\u043b\u044b \u0432 \u0441\u0442\u0440\u043e\u043a\u0435 \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0432 SQL (\u044d\u043c\u0443\u043b\u044f\u0446\u0438\u044f mysql_real_escape_string()).     *     * @param  string      $sql  \u0418\u0441\u0445\u043e\u0434\u043d\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430.     * @param  mysqli|null $link \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435; null \u2014 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0438\u0437 $GLOBALS.     *     * @return string|false \u042d\u043a\u0440\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430 \u043b\u0438\u0431\u043e false \u043f\u0440\u0438 \u043d\u0435\u0432\u0430\u043b\u0438\u0434\u043d\u043e\u043c \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0438.     *     * @global mysqli|null $mysql_oldstyle_link \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e ($GLOBALS['mysql_oldstyle_link']).     *     * @deprecated \u0422\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441 \u043b\u0435\u0433\u0430\u0441\u0438; \u0432 \u043d\u043e\u0432\u043e\u043c \u043a\u043e\u0434\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d\u0438\u044f mysqli\/PDO.     * @see        mysqli_real_escape_string()     *\/    function mysql_real_escape_string($sql, $link = null)    {        if ($link === null) {            $link = $GLOBALS['mysql_oldstyle_link'] ?? null;        }        if (!$link instanceof mysqli) {            return false;        }        return mysqli_real_escape_string($link, (string) $sql);    }    \/**     * \u0412\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0432\u0435\u0440\u0441\u0438\u044e MySQL-\u0441\u0435\u0440\u0432\u0435\u0440\u0430 (\u044d\u043c\u0443\u043b\u044f\u0446\u0438\u044f mysql_get_server_info()).     *     * @param  mysqli|null $link \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435; null \u2014 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0438\u0437 $GLOBALS.     *     * @return string|false \u0421\u0442\u0440\u043e\u043a\u0430 \u0432\u0435\u0440\u0441\u0438\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u043b\u0438\u0431\u043e false \u043f\u0440\u0438 \u043d\u0435\u0432\u0430\u043b\u0438\u0434\u043d\u043e\u043c \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0438.     *     * @global mysqli|null $mysql_oldstyle_link \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e ($GLOBALS['mysql_oldstyle_link']).     *     * @deprecated \u0422\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441 \u043b\u0435\u0433\u0430\u0441\u0438; \u0432 \u043d\u043e\u0432\u043e\u043c \u043a\u043e\u0434\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 mysqli \u0438\u043b\u0438 PDO.     * @see        mysqli_get_server_info()     *\/    function mysql_get_server_info($link = null)    {        if ($link === null) {            $link = $GLOBALS['mysql_oldstyle_link'] ?? null;        }        if (!$link instanceof mysqli) {            return false;        }        return mysqli_get_server_info($link);    }    \/**     * \u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u043a\u0443 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f (\u044d\u043c\u0443\u043b\u044f\u0446\u0438\u044f mysql_set_charset()).     *     * @param  string      $charset          \u0418\u043c\u044f \u043a\u043e\u0434\u0438\u0440\u043e\u0432\u043a\u0438 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u00abutf8mb4\u00bb).     * @param  mysqli|null $link_identifier  \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435; null \u2014 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0438\u0437 $GLOBALS.     *     * @return bool true \u043f\u0440\u0438 \u0443\u0441\u043f\u0435\u0445\u0435, false \u043f\u0440\u0438 \u043e\u0448\u0438\u0431\u043a\u0435 \u0438\u043b\u0438 \u043d\u0435\u0432\u0430\u043b\u0438\u0434\u043d\u043e\u043c \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0438.     *     * @global mysqli|null $mysql_oldstyle_link \u0421\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e ($GLOBALS['mysql_oldstyle_link']).     *     * @deprecated \u0422\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441 \u043b\u0435\u0433\u0430\u0441\u0438; \u0432 \u043d\u043e\u0432\u043e\u043c \u043a\u043e\u0434\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 mysqli \u0438\u043b\u0438 PDO.     * @see        mysqli_set_charset()     *\/    function mysql_set_charset($charset, $link_identifier = null)    {        if ($link_identifier === null) {            $link_identifier = $GLOBALS['mysql_oldstyle_link'] ?? null;        }        if (!$link_identifier instanceof mysqli) {            return false;        }        return mysqli_set_charset($link_identifier, (string) $charset);    }}?&gt;<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u00a0<\/p>\n<p>\u00a0<\/p>\n<p>\u00a0<\/p>\n<\/div>\n<p>\u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/1098930\/\">https:\/\/habr.com\/ru\/articles\/1098930\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u0412\u0435\u0447\u0435\u0440\u043e\u043c 21 \u043e\u043a\u0442\u044f\u0431\u0440\u044f 2026 \u0433\u043e\u0434\u0430 \u043c\u043e\u0439 \u0442\u0435\u043b\u0435\u0444\u043e\u043d \u0440\u0430\u0437\u043e\u0440\u0432\u0430\u043b\u0441\u044f \u043e\u0442 \u0437\u0432\u043e\u043d\u043a\u043e\u0432. \u0412 \u0440\u0430\u0431\u043e\u0447\u0435\u043c \u0447\u0430\u0442\u0435, \u0433\u0434\u0435 \u043e\u0431\u044b\u0447\u043d\u043e \u043e\u0431\u0441\u0443\u0436\u0434\u0430\u044e\u0442 \u043a\u043e\u0442\u043e\u0432 \u0438 \u0441\u0440\u043e\u043a\u0438 \u0441\u0434\u0430\u0447\u0438 \u043c\u0430\u043a\u0435\u0442\u043e\u0432, \u0432\u0438\u0441\u0435\u043b \u043e\u0434\u0438\u043d\u043e\u043a\u0438\u0439, \u043d\u043e \u043e\u0447\u0435\u043d\u044c \u0436\u0438\u0440\u043d\u044b\u0439 \u0430\u043b\u0435\u0440\u0442 \u043e\u0442 \u043c\u043e\u0435\u0433\u043e \u0441\u043a\u0430\u043d\u0435\u0440\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438. \u041a\u043e\u0442\u043e\u0440\u044b\u0439 \u0433\u043b\u0430\u0441\u0438\u043b, \u0447\u0442\u043e \u043d\u0430\u043c \u0432\u0441\u0435\u043c \u043a\u043e\u043d\u0435\u0446.\u0414\u0432\u0435 \u043a\u0440\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438 \u0432 PHP, \u0440\u0430\u0441\u043a\u0440\u044b\u0442\u044b\u0435 \u0443\u0442\u0440\u043e\u043c \u044d\u0442\u043e\u0433\u043e \u0437\u043b\u043e\u043f\u043e\u043b\u0443\u0447\u043d\u043e\u0433\u043e \u0434\u043d\u044f. \u0422\u043e\u0447\u043d\u044b\u0445 \u0434\u0435\u0442\u0430\u043b\u0435\u0439 \u0432 \u043f\u0430\u0431\u043b\u0438\u043a\u0435 \u0435\u0449\u0435 \u043d\u0435\u0431\u044b\u043b\u043e. \u0413\u043e\u0432\u043e\u0440\u0438\u043b\u043e\u0441\u044c, \u0447\u0442\u043e \u0432\u0435\u043d\u0434\u043e\u0440 \u0443\u0436\u0435 \u0432\u044b\u043a\u0430\u0442\u0438\u043b \u0444\u0438\u043a\u0441 \u0432 8.5.12, \u0430 \u0432\u0441\u0435, \u0447\u0442\u043e \u043d\u0438\u0436\u0435 \u2014 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0432 \u043a\u0440\u0430\u0441\u043d\u043e\u0439 \u0437\u043e\u043d\u0435. \u0422\u0430\u043a\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u0431\u044b\u043b\u0430 \u043d\u0430 \u043c\u043e\u043c\u0435\u043d\u0442 \u043e\u0441\u043e\u0437\u043d\u0430\u043d\u0438\u044f \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0430 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b.\u0423 \u043c\u0435\u043d\u044f \u043d\u0430 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0435 \u043e\u043a\u043e\u043b\u043e \u0441\u043e\u0442\u043d\u0438 \u0441\u0430\u0439\u0442\u043e\u0432. \u0420\u0430\u0437\u0431\u0440\u043e\u0441 \u043f\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c \u2014 \u043e\u0442 \u0443\u0431\u0438\u0442\u043e\u0433\u043e shared-\u0445\u043e\u0441\u0442\u0438\u043d\u0433\u0430, \u0433\u0434\u0435 \u0430\u0434\u043c\u0438\u043d \u0441\u043f\u0438\u0442 \u0435\u0449\u0435 \u0441 \u043d\u0443\u043b\u0435\u0432\u044b\u0445, \u0434\u043e \u043f\u0430\u0440\u044b \u0434\u0435\u0441\u044f\u0442\u043a\u043e\u0432 VPS. \u0412\u0435\u0440\u0441\u0438\u0438 PHP \u2014 \u043e\u0442 \u0433\u043e\u0440\u0434\u043e\u0433\u043e 8.3 \u043d\u0430 \u0441\u0432\u0435\u0436\u0438\u0445 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u0445 \u0434\u043e \u043c\u0443\u0437\u0435\u0439\u043d\u044b\u0445 \u044d\u043a\u0441\u043f\u043e\u043d\u0430\u0442\u043e\u0432.\u041f\u0435\u0440\u0432\u0430\u044f \u043c\u044b\u0441\u043b\u044c \u0431\u044b\u043b\u0430 \u0440\u0430\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0439: \u00ab\u0417\u0430\u0432\u0442\u0440\u0430 \u0441 \u0443\u0442\u0440\u0430 \u0441\u043f\u043e\u043a\u043e\u0439\u043d\u043e \u043f\u0440\u043e\u043f\u0438\u0448\u0435\u043c \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0432 CI\/CD, \u043f\u0440\u043e\u0433\u043e\u043d\u044f\u0435\u043c \u0442\u0435\u0441\u0442\u044b, \u0432\u044b\u043a\u0430\u0442\u044b\u0432\u0430\u0435\u043c\u00bb. \u0412\u0442\u043e\u0440\u0430\u044f \u043c\u044b\u0441\u043b\u044c, \u0431\u043e\u043b\u0435\u0435 \u0447\u0435\u0441\u0442\u043d\u0430\u044f, \u043f\u0440\u0438\u0448\u043b\u0430 \u0447\u0435\u0440\u0435\u0437 \u0441\u0435\u043a\u0443\u043d\u0434\u0443: \u00ab\u0435\u0441\u043b\u0438 \u0434\u044b\u0440\u044b \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0438 \u0441\u0435\u0433\u043e\u0434\u043d\u044f, \u044d\u043a\u0441\u043f\u043b\u043e\u0439\u0442\u044b \u043f\u043e\u044f\u0432\u044f\u0442\u0441\u044f \u0432 \u043f\u0430\u0431\u043b\u0438\u043a\u0435 \u0437\u0430\u0432\u0442\u0440\u0430 \u043a \u043e\u0431\u0435\u0434\u0443\u00bb. \u0421\u043f\u0430\u0442\u044c \u044f \u0432 \u0442\u0443 \u043d\u043e\u0447\u044c \u043b\u0435\u0433 \u0432 04:30.\u0427\u0442\u043e \u0437\u0430 \u0443\u044f\u0437\u0432\u0438\u043c\u043e\u0441\u0442\u0438 \u0438 \u043f\u043e\u0447\u0435\u043c\u0443 \u0438\u043c\u0435\u043d\u043d\u043e 8.5.12\u0414\u0435\u0442\u0430\u043b\u0435\u0439 CVE \u043d\u0430 \u043c\u043e\u043c\u0435\u043d\u0442 \u0430\u043b\u0435\u0440\u0442\u0430 \u043d\u0435 \u0431\u044b\u043b\u043e. \u0422\u043e\u0447\u043d\u0435\u0435 \u043d\u0435 \u0431\u044b\u043b\u043e \u0443 \u043c\u0435\u043d\u044f. \u0411\u044b\u043b\u043e \u0434\u0440\u0443\u0433\u043e\u0435: PHP Group \u0447\u0435\u0442\u043a\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u043b\u0430 \u0432 \u0440\u0435\u043b\u0438\u0437\u0435 \u2014 \u0430\u043f\u0434\u0435\u0439\u0442 \u043a\u0440\u0438\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439, \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0443\u0435\u0442\u0441\u044f \u043d\u0435\u043c\u0435\u0434\u043b\u0435\u043d\u043d\u043e\u0435 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435.\u0412 2026 \u0433\u043e\u0434\u0443 PHP 8.5 \u2014 \u044d\u0442\u043e \u0443\u0436\u0435 \u0432\u043f\u043e\u043b\u043d\u0435 \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u043c\u0435\u0439\u043d\u0441\u0442\u0440\u0438\u043c, \u043d\u043e \u0432 \u043f\u0440\u043e\u0434\u0430\u043a\u0448\u0435\u043d\u0435 \u043e\u043d \u0441\u0442\u043e\u0438\u0442 \u0434\u0430\u043b\u0435\u043a\u043e \u043d\u0435 \u0432\u0435\u0437\u0434\u0435. \u041c\u043d\u043e\u0433\u0438\u0435 \u043a\u043b\u0438\u0435\u043d\u0442\u044b \u0441\u0438\u0434\u044f\u0442 \u043d\u0430 8.2 \u0438\u043b\u0438 8.3, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u00ab\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u2014 \u043d\u0435 \u0442\u0440\u043e\u0433\u0430\u0439\u00bb. \u0410 \u0443 \u043c\u0435\u043d\u044f \u0432 \u0437\u0430\u043d\u0430\u0447\u043a\u0435 \u0431\u044b\u043b\u0438 \u0442\u0435 \u0441\u0430\u043c\u044b\u0435 32 \u0441\u0430\u0439\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u043e \u0441\u0438\u0445 \u043f\u043e\u0440 \u0434\u044b\u0448\u0430\u043b\u0438 \u043d\u0430 \u043b\u0430\u0434\u0430\u043d \u043f\u043e\u0434 PHP 5.4 \u0438 5.6. \u042d\u0442\u043e \u0441\u0442\u0430\u0440\u044b\u0435 \u0441\u0430\u043c\u043e\u043f\u0438\u0441\u043d\u044b\u0435 CRM, \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043c\u0430\u0433\u0430\u0437\u0438\u043d\u044b \u043d\u0430 Joomla 1.5 \u0438 \u0444\u043e\u0440\u0443\u043c\u044b \u043d\u0430 vBulletin, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043a\u043b\u0438\u0435\u043d\u0442\u044b \u043e\u0442\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u00ab\u0442\u0430\u043c \u0421\u0422\u041e\u041b\u042c\u041a\u041e \u0432\u0441\u0435\u0433\u043e \u0437\u0430 \u0434\u0435\u0441\u044f\u0442\u044c \u043b\u0435\u0442\u00bb. \u0412\u0430\u0440\u0438\u0430\u043d\u0442 \u00ab\u043f\u0440\u043e\u0441\u0442\u043e \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c\u0441\u044f \u0434\u043e 8.5\u00bb \u0434\u043b\u044f \u043d\u0438\u0445 \u043e\u0437\u043d\u0430\u0447\u0430\u043b \u043c\u0433\u043d\u043e\u0432\u0435\u043d\u043d\u0443\u044e \u0431\u0435\u043b\u0443\u044e \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443. \u0420\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435 mysql_* \u0432\u044b\u0440\u0435\u0437\u0430\u043b\u0438 \u0438\u0437 \u044f\u0434\u0440\u0430 \u0435\u0449\u0435 \u0432 PHP 7.0. \u041b\u044e\u0431\u043e\u0439 \u0432\u044b\u0437\u043e\u0432 mysql_connect() \u0438\u043b\u0438 mysql_query() \u043d\u0430 \u0432\u043e\u0441\u044c\u043c\u0435\u0440\u043a\u0435 \u0440\u043e\u043d\u044f\u0435\u0442 \u0441\u043a\u0440\u0438\u043f\u0442 \u0441 \u0444\u0430\u0442\u0430\u043b\u043e\u043c.\u042f \u043c\u043e\u043b\u0447\u0443 \u043f\u0440\u043e \u0441\u0442\u0440\u0438\u043a\u0442-\u0442\u0438\u043f\u0438\u0437\u0430\u0446\u0438\u044e \u0438 \u043c\u043d\u043e\u0433\u043e\u0435 \u0434\u0440\u0443\u0433\u043e\u0435, \u0447\u0442\u043e \u0443 8+ \u043f\u043e\u0434 \u043a\u0430\u043f\u043e\u0442\u043e\u043c.\u041c\u0430\u0440\u0430\u0444\u043e\u043d \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430: \u0441\u0442\u043e \u0441\u0430\u0439\u0442\u043e\u0432 \u0437\u0430 \u0442\u0440\u043e\u0435 \u0441\u0443\u0442\u043e\u043a\u041f\u043b\u0430\u043d \u0431\u044b\u043b \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0438 \u0436\u0435\u0441\u0442\u043e\u043a\u0438\u0439. Shared-\u0445\u043e\u0441\u0442\u0438\u043d\u0433\u0438,      \u0433\u0434\u0435 \u0443 \u043c\u0435\u043d\u044f \u043d\u0435\u0442 \u0440\u0443\u0442\u0430 \u2014 \u0442\u0438\u043a\u0435\u0442\u044b \u0432 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0443 \u0441 \u043a\u0440\u0438\u043a\u0430\u043c\u0438, \u0441\u043b\u0435\u0437\u0430\u043c\u0438 \u0438\u043b\u0438 \u0443\u0433\u0440\u043e\u0437\u0430\u043c\u0438 &#8212; \u00ab\u0441\u0440\u043e\u0447\u043d\u043e \u043d\u0430\u043a\u0430\u0442\u0438\u0442\u0435 8.5.12\u00bb. \u0412\u044b\u0436\u0438\u043b\u0438 \u043d\u0435 \u0432\u0441\u0435, \u0434\u0432\u0430 \u043f\u0440\u043e\u0432\u0430\u0439\u0434\u0435\u0440\u0430 \u043e\u0442\u0432\u0435\u0442\u0438\u043b\u0438, \u0447\u0442\u043e \u0443 \u043d\u0438\u0445 \u0432 \u043f\u043b\u0430\u043d\u0430\u0445 \u0430\u043f\u0433\u0440\u0435\u0439\u0434 \u043d\u0430 \u0434\u0435\u043a\u0430\u0431\u0440\u044c. \u041f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u044d\u043a\u0441\u0442\u0440\u0435\u043d\u043d\u043e \u043f\u043e\u0434\u043d\u0438\u043c\u0430\u0442\u044c \u0434\u043b\u044f \u043d\u0438\u0445 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b \u043d\u0430 \u0441\u0432\u043e\u0438\u0445 VPS \u0438 \u043f\u0435\u0440\u0435\u043a\u0438\u0434\u044b\u0432\u0430\u0442\u044c DNS.\u0421\u0432\u043e\u0438      VPS. \u0422\u0443\u0442 \u043f\u043e\u043b\u0435\u0433\u0447\u0435: apt update &amp;&amp; apt install php8.5-cli php8.5-fpm. \u041d\u043e \u0434\u044c\u044f\u0432\u043e\u043b, \u043a\u0430\u043a \u043e\u0431\u044b\u0447\u043d\u043e, \u0441\u0438\u0434\u0435\u043b \u0432 php.ini \u0438 extension=.\u0410 \u0435\u0449\u0435:\u041e\u0442\u0432\u0430\u043b\u0438\u043b\u0438\u0441\u044c      \u0441\u0442\u0430\u0440\u044b\u0435 IonCube Loader \u0434\u043b\u044f PHP 7.4, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0437\u0430\u0447\u0435\u043c-\u0442\u043e \u0442\u044f\u043d\u0443\u043b\u0438 \u0441\u0442\u0430\u0440\u044b\u0435 \u0431\u0438\u043b\u0434\u044b WordPress \u0438 \u041a\u0442\u0443\u043b\u0445\u0443 \u0435\u0433\u043e \u0441\u0437\u043d\u0430\u0435\u0442 \u0447\u0435\u0433\u043e \u0435\u0449\u0435.\u0421\u043b\u043e\u043c\u0430\u043b\u0441\u044f      mcrypt \u043d\u0430 \u043e\u0434\u043d\u043e\u043c \u0434\u0440\u0435\u0432\u043d\u0435\u043c \u0431\u0438\u043b\u043b\u0438\u043d\u0433\u0435 (\u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u0432 \u0442\u0440\u0438 \u0447\u0430\u0441\u0430 \u043d\u043e\u0447\u0438 \u043f\u0438\u0441\u0430\u0442\u044c \u0432\u0440\u0430\u043f\u043f\u0435\u0440 \u0432\u043e\u043a\u0440\u0443\u0433 openssl).Composer \u043d\u0430 \u043f\u0430\u0440\u0435 \u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432 \u0441\u043e\u0448\u0435\u043b \u0441 \u0443\u043c\u0430 \u043e\u0442 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0432 composer.json \u0436\u0435\u0441\u0442\u043a\u043e \u043f\u0440\u0438\u0431\u0438\u0442\u043e      &#171;php&#187;: &#171;&gt;=5.6, &lt;8.0&#187;. \u041f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u043c\u0430\u0441\u0441\u043e\u0432\u043e \u0440\u0435\u0437\u0430\u0442\u044c \u044d\u0442\u0438 \u0441\u0442\u0440\u043e\u043a\u0438 \u0447\u0435\u0440\u0435\u0437 sed.Deprecated-\u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u044f \u043e\u0442 create_function() \u0438 \u043d\u0435\u044f\u0432\u043d\u044b\u0445 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u0438\u0439 \u0442\u0438\u043f\u043e\u0432 \u0437\u0430\u0431\u0438\u043b\u0438 \u043b\u043e\u0433\u0438 \u0442\u0430\u043a, \u0447\u0442\u043e \u0440\u043e\u0442\u0430\u0446\u0438\u044f \u043d\u0435 \u0441\u043f\u0440\u0430\u0432\u043b\u044f\u043b\u0430\u0441\u044c.\u0418\u0437 \u0441\u043e\u0442\u043d\u0438 \u0441\u0430\u0439\u0442\u043e\u0432 68 \u043f\u043e\u0434\u043d\u044f\u043b\u0438\u0441\u044c \u043d\u0430 8.5.12 \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0441\u043c\u0435\u043d\u044b \u0432\u0435\u0440\u0441\u0438\u0438 \u0432 FPM \u0438 \u043b\u0435\u0433\u043a\u043e\u0439 \u043f\u0440\u0430\u0432\u043a\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u043e\u0432, \u043d\u0443 \u0438 \u043f\u0430\u0440\u044b \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0439 \u0432 \u0441\u0430\u043c\u0438\u0445 \u0441\u043a\u0440\u0438\u043f\u0442\u0430\u0445. \u042d\u0442\u043e \u0431\u044b\u043b\u0438 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u0432\u0435\u0436\u0438\u0435 WordPress, Laravel, OpenCart \u0438 \u0441\u0430\u043c\u043e\u043f\u0438\u0441\u044b. \u042f \u043f\u0440\u043e\u0433\u043e\u043d\u044f\u043b \u0438\u0445 \u0447\u0435\u0440\u0435\u0437 grep -R &#171;mysql_&#187;, \u0447\u0442\u043e\u0431\u044b \u0443\u0436 \u0443\u0431\u0435\u0434\u0438\u0442\u044c\u0441\u044f \u043e\u043a\u043e\u043d\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u043e. \u2014 \u0447\u0438\u0441\u0442\u043e.\u041e\u0441\u0442\u0430\u0432\u0448\u0438\u0435\u0441\u044f 32 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u043f\u0440\u0438 \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u043d\u0430 \u0432\u043e\u0441\u044c\u043c\u0435\u0440\u043a\u0443 \u0432\u044b\u0434\u0430\u0432\u0430\u043b\u0438 Fatal error: Uncallable function mysql_connect() \u0438 \u043c\u043d\u043e\u0433\u043e-\u043c\u043d\u043e\u0433\u043e \u0447\u0435\u0433\u043e \u0435\u0449\u0435\u2026\u041f\u043e\u0447\u0435\u043c\u0443 \u043d\u0435\u043b\u044c\u0437\u044f \u00ab\u043f\u0440\u043e\u0441\u0442\u043e \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u0442\u044c\u00bbmysql_* \u2014 \u044d\u0442\u043e \u043f\u0440\u043e\u043a\u043b\u044f\u0442\u0438\u0435 \u043b\u0435\u0433\u0430\u0441\u0438. \u0412 \u044d\u0442\u0438\u0445 32 \u043f\u0440\u043e\u0435\u043a\u0442\u0430\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 mysql_connect, mysql_query, mysql_fetch_assoc \u0440\u0430\u0437\u043c\u0430\u0437\u0430\u043d\u044b \u043f\u043e \u0441\u043e\u0442\u043d\u044f\u043c \u0444\u0430\u0439\u043b\u043e\u0432. \u0413\u0434\u0435-\u0442\u043e \u043e\u043d\u0438 \u043e\u0431\u0435\u0440\u043d\u0443\u0442\u044b \u0432 \u0441\u0432\u043e\u0438 \u043a\u043b\u0430\u0441\u0441\u044b, \u0433\u0434\u0435-\u0442\u043e \u0432\u044b\u0437\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u0432 \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u043d\u043e\u043c \u043b\u0430\u043f\u0448\u0435-\u043a\u043e\u0434\u0435. \u041f\u0435\u0440\u0435\u043f\u0438\u0441\u0430\u0442\u044c \u044d\u0442\u043e \u043d\u0430 PDO \u0438\u043b\u0438 \u0445\u043e\u0442\u044f \u0431\u044b mysqli \u0437\u0430 \u043d\u0435\u0434\u0435\u043b\u044e? \u041c\u0430\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e. \u0412 \u043e\u0434\u043d\u043e\u043c \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u043e\u0435\u043a\u0442\u0435 \u0441\u0442\u0430\u0440\u043e\u0439 \u043b\u043e\u0433\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u0431\u044b\u043b\u043e 400+ \u0432\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u0439 mysql_query. \u0414\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u0442\u0440\u0430\u0442\u0438\u0442\u044c \u043d\u0430 \u0437\u0430\u043c\u0435\u043d\u0443 \u043e\u0434\u043d\u043e\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0441 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0434\u0432\u0435 \u043c\u0438\u043d\u0443\u0442\u044b (\u0447\u0442\u043e \u043e\u0447\u0435\u043d\u044c \u043e\u043f\u0442\u0438\u043c\u0438\u0441\u0442\u0438\u0447\u043d\u043e, \u0430\u0433\u0430), \u044d\u0442\u043e 800 \u043c\u0438\u043d\u0443\u0442\u044b \u0447\u0438\u0441\u0442\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438. \u041f\u043e\u0447\u0442\u0438 14 \u0447\u0430\u0441\u043e\u0432 \u043d\u0430 \u043e\u0434\u0438\u043d \u043f\u0440\u043e\u0435\u043a\u0442. \u0410 \u0438\u0445 32. \u0418 \u044d\u0442\u043e \u043d\u0435 \u0441\u0447\u0438\u0442\u0430\u044f \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u044b\u0432\u0430\u043d\u0438\u044f \u043b\u043e\u0433\u0438\u043a\u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u0448\u0438\u0431\u043e\u043a, \u0442\u0430\u043a \u043a\u0430\u043a PDO \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u043a\u0438\u0434\u0430\u0435\u0442 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f, \u0430 \u0441\u0442\u0430\u0440\u044b\u0439 \u043a\u043e\u0434 \u0436\u0434\u0435\u0442, \u0447\u0442\u043e mysql_query() \u043f\u0440\u043e\u0441\u0442\u043e \u043c\u043e\u043b\u0447\u0430 \u0432\u0435\u0440\u043d\u0435\u0442 false. \u0414\u0430\u0443\u043d\u0442\u0430\u0439\u043c \u043d\u0430 \u0434\u0432\u0435 \u043d\u0435\u0434\u0435\u043b\u0438, \u043f\u043e\u043a\u0430 \u044f \u0431\u0443\u0434\u0443 \u0432 \u043e\u0434\u043d\u043e \u043b\u0438\u0446\u043e \u0440\u0430\u0437\u0433\u0440\u0435\u0431\u0430\u0442\u044c \u044d\u0442\u043e\u0442 \u0441\u043f\u0430\u0433\u0435\u0442\u0442\u0438-\u043a\u043e\u0434, \u043a\u043b\u0438\u0435\u043d\u0442 \u043d\u0435 \u043e\u043f\u043b\u0430\u0442\u0438\u0442. \u0410 \u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u0438\u0445 \u043d\u0430 PHP 5.6, \u043a\u043e\u0433\u0434\u0430 \u0432 \u0441\u0435\u0442\u0438 \u0443\u0436\u0435 \u043a\u0440\u0443\u0442\u044f\u0442 PoC \u0434\u043b\u044f \u0441\u0432\u0435\u0436\u0438\u0445 CVE \u2014 \u044d\u0442\u043e \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u0442\u044c \u0430\u043a\u0442 \u043e \u043f\u0440\u043e\u0444\u0435\u0441\u0441\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u043c \u0441\u0430\u043c\u043e\u0443\u0431\u0438\u0439\u0441\u0442\u0432\u0435.\u0410 \u0437\u043d\u0430\u0447\u0438\u0442, \u043d\u0443\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0441\u0442\u0430\u0440\u044b\u0439 \u043a\u043e\u0434 \u043d\u0430 \u043d\u043e\u0432\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u0431\u0435\u0437 \u043f\u0440\u0430\u0432\u043e\u043a \u0441\u0430\u043c\u043e\u0433\u043e \u043a\u043e\u0434\u0430.\u0410\u043d\u0430\u0442\u043e\u043c\u0438\u044f \u00ab\u0442\u0430\u0431\u043b\u0435\u0442\u043a\u0438\u00bb: mysql-tablet.php\u042f \u043d\u0435 \u043f\u0435\u0440\u0432\u044b\u0439, \u043a\u0442\u043e \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441 \u044d\u0442\u043e\u0439 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043e\u0439, \u043d\u043e \u0433\u043e\u0442\u043e\u0432\u044b\u0435 \u0432\u0440\u0430\u043f\u043f\u0435\u0440\u044b \u0432\u0440\u043e\u0434\u0435 mysqlnd-uh \u0438\u043b\u0438 mysqli_compat \u0447\u0430\u0441\u0442\u043e \u0442\u044f\u043d\u0443\u0442 \u043b\u0438\u0448\u043d\u044e\u044e \u043c\u0430\u0433\u0438\u044e, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043d\u0430 PHP 8.5 \u0432\u0435\u0434\u0435\u0442 \u0441\u0435\u0431\u044f \u043d\u0435\u043f\u0440\u0435\u0434\u0441\u043a\u0430\u0437\u0443\u0435\u043c\u043e.\u041c\u043d\u0435 \u043d\u0443\u0436\u0435\u043d \u0431\u044b\u043b \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0442\u0443\u043f\u043e\u0439, \u043f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u044b\u0439 \u0441\u043b\u043e\u0439. \u041e\u0434\u0438\u043d \u0444\u0430\u0439\u043b, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u043d\u043a\u043b\u0443\u0434\u0438\u0442\u0441\u044f \u0432 auto_prepend_file \u0432 php.ini \u0438\u043b\u0438 .user.ini, \u043d\u0443 \u0438\u043b\u0438 \u0432\u043e\u043e\u0431\u0449\u0435 \u043f\u0440\u043e\u0441\u0442\u043e \u0432 \u0441\u043a\u0440\u0438\u043f\u0442.\u042f \u043d\u0430\u0437\u0432\u0430\u043b \u0435\u0433\u043e mysql-tablet.php. \u0418\u0434\u0435\u044f \u043f\u0440\u043e\u0441\u0442\u0430\u044f: \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c, \u043d\u0435 \u043e\u0431\u044a\u044f\u0432\u043b\u0435\u043d\u044b \u043b\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 mysql_* (\u0432\u0434\u0440\u0443\u0433 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0447\u0443\u0434\u0438\u0442 \u0438 \u043e\u0441\u0442\u0430\u0432\u0438\u043b \u0438\u0445 \u0434\u043b\u044f \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438), \u0438 \u0435\u0441\u043b\u0438 \u043d\u0435\u0442 \u2014 \u043e\u0431\u044a\u044f\u0432\u0438\u0442\u044c \u0438\u0445 \u043f\u043e\u0432\u0435\u0440\u0445 mysqli. \u0412\u043e\u0442 \u043a\u0430\u043a \u044d\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043f\u043e\u0434 \u043a\u0430\u043f\u043e\u0442\u043e\u043c.1. \u0417\u0430\u0442\u044b\u043a\u0430\u0435\u043c \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b\u041b\u0435\u0433\u0430\u0441\u0438-\u043a\u043e\u0434 2012 \u0433\u043e\u0434\u0430 \u043d\u0435 \u0437\u043d\u0430\u0435\u0442 \u043f\u0440\u043e try-catch. \u0415\u0441\u043b\u0438 mysqli \u043f\u0440\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0438 \u0441\u043b\u043e\u0432\u0438\u0442 \u043e\u0448\u0438\u0431\u043a\u0443, \u043e\u043d \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0431\u0440\u043e\u0441\u0438\u0442 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435. \u0421\u0442\u0430\u0440\u044b\u0439 if (!$link) \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u0441\u043a\u0440\u0438\u043f\u0442 \u0443\u043c\u0440\u0435\u0442 \u043d\u0435\u043a\u0440\u0430\u0441\u0438\u0432\u043e.if (function_exists(&#8216;mysqli_report&#8217;) &amp;&amp; defined(&#8216;MYSQLI_REPORT_OFF&#8217;)) { \u00a0\u00a0\u00a0 mysqli_report(MYSQLI_REPORT_OFF); }\u042d\u0442\u0430 \u0441\u0442\u0440\u043e\u043a\u0430 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0438\u0442 mysqli \u0432 \u0442\u0438\u0445\u0438\u0439 \u0440\u0435\u0436\u0438\u043c. \u0422\u0435\u043f\u0435\u0440\u044c \u043e\u043d \u0432\u0435\u0434\u0435\u0442 \u0441\u0435\u0431\u044f \u043a\u0430\u043a \u0441\u0442\u0430\u0440\u044b\u0439 mysql: \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 false \u0438 \u043f\u0438\u0448\u0435\u0442 \u043e\u0448\u0438\u0431\u043a\u0443 \u0432 \u0441\u0432\u043e\u0439 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439 \u043b\u043e\u0433, \u0430 \u043d\u0435 \u0440\u043e\u043d\u044f\u0435\u0442 \u0441\u043a\u0440\u0438\u043f\u0442.\u0414\u0430\u043b\u044c\u0448\u0435 \u2014 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b \u0442\u0438\u043f\u043e\u0432 \u0432\u044b\u0431\u043e\u0440\u043a\u0438. \u0412 \u043a\u043e\u0434\u0435 \u0432\u0435\u0437\u0434\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e mysql_fetch_array($res, MYSQL_ASSOC). \u0412 PHP 8.5 \u044d\u0442\u0438 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u044b \u043d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u043e, \u0435\u0441\u043b\u0438 \u043d\u0435 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043e \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u0438\u0435 mysql. \u041f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u043e\u0431\u044a\u044f\u0432\u0438\u0442\u044c \u0438\u0445 \u0432\u0440\u0443\u0447\u043d\u0443\u044e, \u043c\u0430\u043f\u043f\u044f \u043d\u0430 MYSQLI_*:if (!defined(&#8216;MYSQL_ASSOC&#8217;)) { \u00a0\u00a0\u00a0 define(&#8216;MYSQL_ASSOC&#8217;, defined(&#8216;MYSQLI_ASSOC&#8217;) ? MYSQLI_ASSOC : 1); }2. \u041c\u0430\u0433\u0438\u044f mysql_connect\u0424\u0443\u043d\u043a\u0446\u0438\u044f mysql_connect() \u0438\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0438 \u0443\u043c\u0435\u0435\u0442 \u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0442\u044c \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e localhost, \u043d\u043e \u0438 hostname:3306, :\/tmp\/mysql.sock \u0438 \u0434\u0430\u0436\u0435 p:hostname \u0434\u043b\u044f \u043f\u0435\u0440\u0441\u0438\u0441\u0442\u0435\u043d\u0442\u043d\u044b\u0445 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439. \u041c\u043e\u0439 \u0441\u043b\u043e\u0439 \u0434\u043e\u043b\u0436\u0435\u043d \u044d\u0442\u043e \u0440\u0430\u0441\u043f\u0430\u0440\u0441\u0438\u0442\u044c \u0438 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u0432 mysqli_real_connect.function mysql_connect($server, $username, $password, $new_link = false, $client_flags = 0)        {            try {                if (!function_exists(&#8216;mysqli_init&#8217;)) {                    return false;                }                $host = (string) $server;                $port = null;                $socket = null;                $persistentPrefix = &#187;;                if (str_starts_with($host, &#8216;p:&#8217;)) {                    $persistentPrefix = &#8216;p:&#8217;;                    $host = substr($host, 2);                }                if ($host === &#187;) {                    $host = &#8216;localhost&#8217;;                } elseif (str_starts_with($host, &#8216;:&#8217;)) {                    $socket = substr($host, 1);                    $host = &#8216;localhost&#8217;;                } elseif (str_contains($host, &#8216;:&#8217;)) {                    [$hostname, $extra] = explode(&#8216;:&#8217;, $host, 2);                    if ($hostname !== &#187;) {                        $host = $hostname;                    }                    if ($extra !== &#187;) {                        if ($extra[0] === &#8216;\/&#8217;) {                            $socket = $extra;                        } else {                            $port = (int) $extra;                        }                    }                }                $host = $persistentPrefix . $host;                $link = mysqli_init();                if (!$link instanceof mysqli) {                    return false;                }                $ok = @mysqli_real_connect(                    $link,                    $host,                    (string) $username,                    (string) $password,                    null,                    $port,                    $socket,                    (int) $client_flags                );                if (!$ok) {                    $GLOBALS[&#8216;mysql_oldstyle_connect_errno&#8217;] = function_exists(&#8216;mysqli_connect_errno&#8217;)                        ? mysqli_connect_errno()                        : 0;                    $GLOBALS[&#8216;mysql_oldstyle_connect_error&#8217;] = function_exists(&#8216;mysqli_connect_error&#8217;)                        ? mysqli_connect_error()                        : &#187;;                    return false;                }                $GLOBALS[&#8216;mysql_oldstyle_link&#8217;] = $link;                $GLOBALS[&#8216;mysql_oldstyle_connect_errno&#8217;] = 0;                $GLOBALS[&#8216;mysql_oldstyle_connect_error&#8217;] = &#187;;                return $link;            } catch (Throwable $e) {                $GLOBALS[&#8216;mysql_oldstyle_connect_errno&#8217;] = (int) $e-&gt;getCode();                $GLOBALS[&#8216;mysql_oldstyle_connect_error&#8217;] = $e-&gt;getMessage();                return false;            }        }\u00a0\u041f\u043e\u0447\u0435\u043c\u0443 \u043b\u0438\u043d\u043a \u043a\u043b\u0430\u0434\u0435\u0442\u0441\u044f \u0432 $GLOBALS[&#8216;mysql_oldstyle_link&#8217;]? \u041f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0432 \u0441\u0442\u0430\u0440\u043e\u043c \u043a\u043e\u0434\u0435 \u0447\u0430\u0441\u0442\u043e \u043e\u043f\u0443\u0441\u043a\u0430\u044e\u0442 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 $link \u0432 \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u0444\u0443\u043d\u043a\u0446\u0438\u044f\u0445, \u043f\u043e\u043b\u0430\u0433\u0430\u044f\u0441\u044c \u043d\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u043e\u0442\u043a\u0440\u044b\u0442\u043e\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435. \u0413\u043b\u043e\u0431\u0430\u043b \u2014 \u0433\u0440\u044f\u0437\u043d\u043e, \u043d\u043e \u044d\u0442\u043e \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u0437\u0430\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043f\u0440\u043e\u0446\u0435\u0434\u0443\u0440\u043d\u044b\u0439 \u043a\u043e\u0434 15-\u043b\u0435\u0442\u043d\u0435\u0439 \u0434\u0430\u0432\u043d\u043e\u0441\u0442\u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0431\u0435\u0437 \u044f\u0432\u043d\u043e\u0439 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0445\u0435\u043d\u0434\u043b\u0430.3. Fetch-\u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0438 \u0441\u0442\u0440\u043e\u0433\u0430\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u0430 false\u042d\u0442\u043e \u0441\u0430\u043c\u044b\u0439 \u0442\u043e\u043d\u043a\u0438\u0439 \u043c\u043e\u043c\u0435\u043d\u0442, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u043b\u043e\u043c\u0430\u0435\u0442\u0441\u044f \u0431\u043e\u043b\u044c\u0448\u0430\u044f \u043f\u043e\u043b\u043e\u0432\u0438\u043d\u0430 \u043b\u0435\u0433\u0430\u0441\u0438. \u0412 \u0441\u0442\u0430\u0440\u043e\u043c mysql_fetch_assoc() \u043f\u0440\u0438 \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u0438 \u043a\u043e\u043d\u0446\u0430 \u0432\u044b\u0431\u043e\u0440\u043a\u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u043b\u0441\u044f false. \u0412 mysqli_fetch_assoc() \u043f\u0440\u0438 \u043f\u0443\u0441\u0442\u043e\u043c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f null.\u041a\u043e\u0434 \u0432\u0438\u0434\u0430 while ($row = mysql_fetch_assoc($res)) { &#8230; } \u043d\u0430 null \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. \u041d\u043e \u043a\u043e\u0434 \u0432\u0438\u0434\u0430 if ($row === false) { \/* \u043a\u0430\u043a\u0430\u044f-\u0442\u043e \u0441\u043f\u0435\u0446-\u043b\u043e\u0433\u0438\u043a\u0430 *\/ } \u043d\u0430 null \u043f\u0430\u0434\u0430\u0435\u0442. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432 \u0442\u0430\u0431\u043b\u0435\u0442\u043a\u0435 \u044f \u043f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0443\u044e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442:function mysql_fetch_assoc($res) {\u00a0\u00a0\u00a0 if (!$res instanceof mysqli_result) {\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 return false;\u00a0\u00a0\u00a0 }\u00a0\u00a0\u00a0 $row = mysqli_fetch_assoc($res);\u00a0\u00a0 \u00a0return $row === null ? false : $row; }\u0422\u043e \u0436\u0435 \u0441\u0430\u043c\u043e\u0435 \u0441\u0434\u0435\u043b\u0430\u043d\u043e \u0434\u043b\u044f mysql_fetch_row \u0438 mysql_fetch_array. \u041c\u044b \u043e\u0431\u043c\u0430\u043d\u044b\u0432\u0430\u0435\u043c \u0441\u0442\u0430\u0440\u044b\u0439 \u043a\u043e\u0434, \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u044f \u0435\u043c\u0443 \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u044b\u0439 false \u0432\u043c\u0435\u0441\u0442\u043e null.4. \u041e\u0448\u0438\u0431\u043a\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f\u0415\u0441\u043b\u0438 mysql_connect() \u0443\u043f\u0430\u043b, \u0441\u0442\u0430\u0440\u044b\u0439 \u043a\u043e\u0434 \u043f\u043e\u043b\u0435\u0437\u0435\u0442 \u0432 mysql_errno() \u0438 mysql_error(). \u041d\u043e \u0435\u0441\u043b\u0438 \u043c\u044b \u043d\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u043b\u0438 \u043e\u0448\u0438\u0431\u043a\u0443 \u0432 \u0433\u043b\u043e\u0431\u0430\u043b\u044c\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435, \u044d\u0442\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u0432\u0435\u0440\u043d\u0443\u0442 \u043f\u0443\u0441\u0442\u043e\u0442\u0443.if (!$ok) { \u00a0\u00a0\u00a0&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-500129","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/500129","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=500129"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/500129\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=500129"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=500129"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=500129"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}