рдмрд╣реБрдд рд╕рдордп рдкрд╣рд▓реЗ, рдЬрдм рдореИрдВ рдмрд╕ PHP рд╕реАрдЦрдирд╛ рд╢реБрд░реВ рдХрд░ рд░рд╣рд╛ рдерд╛ рдФрд░ MySQL рдкреНрд░рд╢реНрдиреЛрдВ (2011) рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдкреЗрдЪреАрджрдЧрд┐рдпреЛрдВ, рдореБрдЭреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП Doctrine рдЬреИрд╕реЗ MySQLi рдХреЗ рд▓рд┐рдП рдПрдХ рдЖрд╡рд░рдг рд▓рд┐рдЦрдиреЗ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдерд╛ред рдпрд╣ 2019 рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╣реИ рдФрд░ рдУрдЖрд░рдПрдо рдереАрдо рдкрд░ рдЕрдкрдиреА рдмрд╛рдЗрдХ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рд╣реИред
рдФрд░ рдЗрд╕рд▓рд┐рдП, рдпрд╣ DBX рд╣реИ - MySQL рдбреЗрдЯрд╛рдмреЗрд╕ рдЗрдВрдЬрди PHP рдХреЗ рд▓рд┐рдП MySQLi рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ рдФрд░ рд╕реНрдерд┐рд░ рдХреНрд╡реЗрд░реА рдХреИрд╢рд┐рдВрдЧ рдФрд░ рдСрдЯреЛ рд╣реИрд╢ рдХреЗ рдСрдЯреЛ-рдЕрдкрдбреЗрдЯ рдХреЗ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╕рд╛рде рдПрдХ рдирд┐рдпрдорд┐рдд рд╕рд░рдгреА рдХреЗ рд░реВрдк рдореЗрдВ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдФрд░ рдлрд╝реАрд▓реНрдб рдХреЗ рд╕рдВрд░рдЪрдирд╛рддреНрдордХ рд╡рд┐рд╡рд░рдг рдХреЗ рдкреНрд░рд╢реНрдиреЛрдВ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИред
рдкреАрдбреАрдУ рдХреЗ рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░реЗрдо рдХреЗ рд╡рд┐рдкрд░реАрдд, рдЗрд╕реЗ рд╣рд▓реНрдХреЗ MySQLi рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рдЪреБрдирд╛ рдЧрдпрд╛ рдерд╛, рдЬреЛ рдХрд┐ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдФрд░ рдЖрд╕рд╛рди рд╣реИ рдФрд░ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд DBX API рдореЗрдВ рдЕрдзрд┐рдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд░реВрдк рд╕реЗ рдлрд┐рдЯ рдмреИрдарддрд╛ рд╣реИред рдореИрдВрдиреЗ рд╕рдВрдЧреАрддрдХрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рднреА рдирд╣реАрдВ рдХрд┐рдпрд╛, рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдРрд╕реА рдХреЛрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдирд╣реАрдВ рд╣реИ рдЬрд╣рд╛рдБ рдореИрдВ рд╕реНрд╡-рд▓рд┐рдЦрд┐рдд рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЕрдиреНрдп рддреГрддреАрдп-рдкрдХреНрд╖ рдирд┐рд░реНрднрд░рддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдБред
рджрд░рдЕрд╕рд▓, рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкрд░реАрдХреНрд╖рдг рдбреЗрдЯрд╛рдмреЗрд╕ рдХреА рд╕рдВрд░рдЪрдирд╛ рдФрд░ рдЙрд╕рдХреЗ рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреЛ рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдо рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рдХрдХреНрд╖рд╛ рд╕реЗ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рдФрд░ рдбреЗрдЯрд╛рдмреЗрд╕ рд╣реЛрд╕реНрдЯ рдХреЗ рд╕рд╛рде рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдбреЗрдЯрд╛ рднреЗрдЬрддреЗ рд╣реИрдВ:
require_once './DBX.php'; $dbx_data = ['localhost', 'root', 'root', 'dbx_test', '8889'];
рдЕрдм рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдХрд┐ рд╣рдореЗрдВ рдирд┐рдпрдорд┐рдд PHP рд╕рд░рдгреА рдХреЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдФрд░ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
<?php $table_1 = 'example';
рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рдпрд╣рд╛рдБ рд╕рд░рд▓ рд╣реИред рдореИрдВрдиреЗ рдордЬрдмреВрдд рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдФрд░ рд╕рд┐рд░реНрдл TEXT, NUMBER рдФрд░ TYMESTAMP рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдЪреБрдирд╛ред рдмреЗрд╢рдХ, рдЕрдзрд┐рдХ "рд╕реНрдЯреАрдпрд░рд┐рдВрдЧ" рддрд╛рд▓рд┐рдХрд╛ рд╕рдВрд░рдЪрдирд╛ рдХреЗ рд▓рд┐рдП, рдСрдЯреЛ-рдЗрдВрдХреНрд░реАрдореЗрдВрдЯ рдХреЗ рд╕рд╛рде рдПрдХ рдХреБрдВрдЬреА рдЖрдИрдбреА рдлрд╝реАрд▓реНрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдореИрдВрдиреЗ рдСрдЯреЛ-рдЗрдВрдХреНрд░реАрдореЗрдВрдЯ рд╕реЗрдЯ рдХрд░рддреЗ рд╕рдордп рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдореЗрдВ рдорд╛рдорд▓реЛрдВ рдХреЛ рдирд╣реАрдВ рджреЗрдЦрд╛ рд╣реИ рдФрд░ рдкреНрд░рд╢реНрдиреЛрдВ рдФрд░ рдЯреЗрдмрд▓ рд╕рдВрдмрдВрдзреЛрдВ рдХреЗ рдбрд┐рдЬрд╛рдЗрди рдХреЗ рд╕рд╛рде рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХрд░рддрд╛ рд╣реИ)ред рдпрд╣ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдХреНрдпрд╛ рдХреНрд╖реЗрддреНрд░ рдЦрд╛рд▓реА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рднрд░рдирд╛ => рд╕рддреНрдп рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реИред
DataBaseX рдХреНрд╡реЗрд░реА рдкреНрд░рдХрд╛рд░ рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИрдВ рдФрд░ рдЗрд╕рдореЗрдВ рдЪрдпрди, рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░реЗрдВ, рд╣рдЯрд╛рдПрдВ, рдЕрдкрдбреЗрдЯ, рдбреНрд░реЙрдк, рдЯреНрд░рдВрдХрдЯ рдФрд░ рдЬреИрд╕реЗ рдмреБрдирд┐рдпрд╛рджреА рддрд░реАрдХреЗ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рддрд╛рд▓рд┐рдХрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреНрд╡реЗрд░реА:
рдпрд╛ рдбреЗрдЯрд╛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреНрд╡реЗрд░реА рдФрд░ рдПрдХ рд╕реНрддрдВрдн рд╕рдВрд░рдЪрдирд╛ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦ рд╕рдХрддреА рд╣реИ:
рд╕рд░рдгреА рдХреА рд╕рдВрд░рдЪрдирд╛ рдПрдХ рджрд┐рди рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ рдФрд░ рдмрд╛рдж рдореЗрдВ рдХреЗрд╡рд▓ рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рди рдлрд╝реАрд▓реНрдб рдореЗрдВ рд╣реЗрд░рдлреЗрд░ рдХрд░рддреА рд╣реИ рдЬреЛ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдпрд╣рд╛рдВ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдЕрдкрдбреЗрдЯ рд╕реНрдЯреЗрдЯрдореЗрдВрдЯ рд╣реИ, рдЬрд┐рд╕реЗ рдореИрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рд╕рдорд╛рдкреНрдд рдХрд░реВрдВрдЧрд╛:
рдореБрдЭреЗ рдРрд╕рд╛ рд▓рдЧ рд░рд╣рд╛ рдерд╛ рдХрд┐ рдХрд╕реМрдЯреА_рдлрд╝реАрд▓реНрдб рдФрд░ рдорд╛рдирджрдВрдб_рдХрд╛рд░реНрдп рдХреНрд╖реЗрддреНрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдкреНрд░рдгрд╛рд▓реА рдХреЛ рдЬрдЯрд┐рд▓ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдПрдХ рдХреНрд╡реЗрд░реА рдмрдирд╛рдИ рдЬреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдбреЗрдЯрд╛ рдЬреЛрдбрд╝рддрд╛ рд╣реИ рдпрджрд┐ рдпрд╣ рдЕрднреА рддрдХ рдирд╣реАрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдпрд╛ рдореМрдЬреВрджрд╛ рдбреЗрдЯрд╛ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рддрд╛ рд╣реИред рдореИрдВрдиреЗ рдЗрд╕ рдХреНрд╡реЗрд░реА рдХреЛ INJECT QUERY рдХрд╣рд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ "in":
рдпрд╣ рдирд┐рдореНрди рд╕реНрддрд░ рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ:
INSERT INTO `revolver__comments` (`field_id`, `field_content`) VALUES ('5', 'TEST UPDATE') ON DUPLICATE KEY UPDATE `field_id`='5', `field_content`='TEST UPDATE';
рдЕрдиреНрдп рд╕рднреА рдкреНрд░рд╢реНрди рд╕рдмрд╕реЗ рд╕рд░рд▓ рд╣реИрдВ рдФрд░ рдЗрд╕рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рджреЗрдЦреЗрдВред index.php рдкрд░реАрдХреНрд╖рдг рдлрд╝рд╛рдЗрд▓ рдореЗрдВ), рд▓реЗрдХрд┐рди рдореИрдВ рдорджрдж рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд▓реЗрдХрд┐рди рдпрд╣ рдмрддрд╛рддрд╛ рд╣реВрдВ рдХрд┐ SELECT рдХреНрд╡реЗрд░реА рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреА рд╣реИ:
<?php
рдпрд╣рд╛рдБ, рдЙрдкрд╕рд░реНрдЧ "s" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЖрдк рдХреНрд╡реЗрд░реА рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рд╕рдореВрд╣ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
sред Field_id ( рдЖрджреЗрд╢ ) | asc ( рджрд┐рд╢рд╛ ) | 100 ( рд╕реАрдорд╛ ) | 0 ( рдСрдлрд╕реЗрдЯ ) ред
рдЕрдиреНрдп рдмрд╛рддреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, DBX рдореЗрдВ JSON рд╕реНрдЯреЗрдЯрд┐рдХреНрд╕ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдПрдХ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдлрд╝рд╛рдЗрд▓ рдХреИрд╢ рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рдкрд░рд┐рд╡рд░реНрддрди рдЕрдиреБрд░реЛрдз (INSERT, UPDATE, DELETE, TRUNCATE) рд╣реИрд╢ рдХреА рдЧрдгрдирд╛ рдХреИрд╢ рд╣реИрд╢ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рдХреА рдЬрд╛рддреА рд╣реИ рдФрд░ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╕реНрдереИрддрд┐рдХ рдХреИрд╢ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рддреА рд╣реИ, рдЬреЛ рдЖрдкрдХреЛ SELECT рдХреНрд╡реЗрд░реАрдЬрд╝ рдкрд░ рд▓реЛрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИред
рднрд╡рд┐рд╖реНрдп рдореЗрдВ, рдореИрдВ DBX рдЗрдВрдЬрди рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдФрд░ UNION рдФрд░ JOIN рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ SQL рдХреНрд╡реЗрд░реА рдбрд┐рдЬрд╝рд╛рдЗрдирд░ рдХреА рдХреНрд╖рдорддрд╛рдУрдВ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣рд╛ рд╣реВрдВ, рд╕рд╛рде рд╣реА JSON рд╕рдВрд░рдЪрдирд╛ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ MySQL 8 рд╕реЗ рдирдпрд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рдорд░реНрдерди рднреА рдЬреЛрдбрд╝ рд╕рдХрддрд╛ рд╣реВрдВред
рдЕрдм DBX рдХрд╛ рдЙрдкрдпреЛрдЧ рдореЗрд░реА
RevolveR рд╕рд╛рдордЧреНрд░реА рдкреНрд░рдмрдВрдзрди рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЕрдЪреНрдЫреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рджрд░реНрд╢рд╛рддрд╛ рд╣реИ (рдкреВрд░реА рд╕рд╛рдЗрдЯ, рдмрд╢рд░реНрддреЗ рдПрдХ рдЕрджреНрдпрддрди рдХреИрд╢ рд╣реИ, рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреНрд╡реЗрд░реА рдХреЗ рд╕рд╛рде рдЖрд░рдВрднреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рд▓рдЧрднрдЧ 0.7 рдПрдордмреА рдЗрдВрдЯрд░рдкреНрд░реЗрдЯрд░ рд░реИрдо рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд░рддрд╛ рд╣реИ)ред рдореЗрд░реЗ рд▓рд┐рдП рдкреВрд░реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдПрдХ рдЕрд▓рдЧ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рджреЗрдЦрдирд╛ рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ, рдЬреЛ рдХрдИ рдмрд╛рд░ рдирдП рдореЙрдбреНрдпреВрд▓ рдХреЗ рдмрд┐рд▓реНрдбрдЕрдк рдФрд░ рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЛ рдЧрддрд┐ рджреЗрддрд╛ рд╣реИред
рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА: рдЧрд┐рдЯрд╣рдм рдкрд░ DBX v1.1.1 ред