
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдиреЗ
рдкрдврд╝рд╛ рд╣реЛрдЧрд╛ , рдХреЛрдбрдЗрдЧреНрдирд┐рдЯрд░ рдХрд╛ рдПрдХ рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╕реЗ рдПрдХ рдирд╡рд╛рдЪрд╛рд░ рд╣реИ
рдорд╛рдЗрдЧреНрд░реЗрд╢рди рд▓рд╛рдЗрдмреНрд░реЗрд░реАред рдЗрд╕рдХреЗ рдореБрдЦреНрдп рдбреЗрд╡рд▓рдкрд░реНрд╕ рдореЗрдВ рд╕реЗ рдПрдХ,
рдлрд┐рд▓ рд╕реНрдЯрд░реНрдЬрди, рд░реЗрд▓реНрд╕ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдХреА рд╕реБрд╡рд┐рдзрд╛ рд╕реЗ рдЗрддрдирд╛ рдкреНрд░реЗрд░рд┐рдд рдерд╛ рдХрд┐ рдЙрд╕рдиреЗ рдХреЛрдбрд╛рдЗрдЧреНрдирд┐рдЯрд░ рдХреЗ рд▓рд┐рдП рдЗрд╕ рддрд░рд╣ рдХреА рдПрдХ рдкрджреНрдзрддрд┐ рдХрд╛ рдПрдХ рдПрдирд╛рд▓реЙрдЧ рдмрдирд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рдФрд░ рдЕрдм, рдЕрдВрдд рдореЗрдВ, рдЖрдк рдЗрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╡рд┐рддрд░рдг рдореЗрдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред
рдЗрд╕ рд▓реЗрдЦ рд╕реЗ рдЖрдкрдХреЛ рдкреНрд░рд╡рд╛рд╕ рдХрд╛ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд╡рд┐рдЪрд╛рд░ рдорд┐рд▓реЗрдЧрд╛, рдФрд░ рдпрд╣ рднреА рд╕реАрдЦреЗрдВрдЧреЗ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рдЬрд╛рдПред
рджреВрд╕рд░реЗ рднрд╛рдЧ рдореЗрдВ , рд╣рдо рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ рдХрд┐рддрдиреА рдЖрд╕рд╛рдиреА рд╕реЗ рдЙрдиреНрд╣реЗрдВ рдЖрдкрдХреЗ рдЖрд╡реЗрджрди рдореЗрдВ рдПрдХреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдпрд╣ рд▓реЗрдЦ рдиреМрд╕рд┐рдЦрд┐рдпрд╛ CodeIgniter рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЕрдзрд┐рдХ рдЙрдиреНрдирдд рд╕рд╣рдХрд░реНрдореА рдЗрд╕ рдЕрджреНрднреБрдд рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдиреЗрдВрдЧреЗ рдФрд░ рдЕрдкрдиреЗ рд▓рд┐рдП рдХреБрдЫ рдирдпрд╛ рд╕реАрдЦреЗрдВрдЧреЗредрдЕрдиреНрдп рдмрд╛рддреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдмрд┐рд▓реНрдХреБрд▓ рдЬрдЯрд┐рд▓ рдирд╣реАрдВ рд╣реИ, рдФрд░ рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЕрдЧрд░ рдХрд┐рд╕реА рдЕрдиреНрдп рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЗ рд▓рд┐рдП рд╡рд╛рдВрдЫрд┐рдд рд╣реИ рддреЛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реЛрдЧрд╛!
рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдЕрд╡рд▓реЛрдХрди
рдорд╛рдЗрдЧреНрд░реЗрд╢рди рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣рдореЗрдВ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рд╕рднреА рдбреЗрдЯрд╛рдмреЗрд╕ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ, рдФрд░ рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдЙрдиреНрд╣реЗрдВ рд░реЛрд▓ рдпрд╛ рдЙрдиреНрд╣реЗрдВ рд╡рд╛рдкрд╕ рд░реЛрд▓ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред рдпрд╣ рдПрдХ рдЯреАрдо рдореЗрдВ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ - рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд╕рд╣рдХрд░реНрдореА рдХреЛ рдпрд╣ рд╕рдордЭрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдХреЛрдб рдХреЛ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╛ рд╕рд╛рдЗрдЯ рдХреЗ рдирдП рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рдпреБрджреНрдз рд╕рд░реНрд╡рд░ рдореЗрдВ рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдХреНрдпрд╛ рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛ред рдпрд╛, рдХрдо рд╕реЗ рдХрдо, рдЖрдк рд╣рдореЗрд╢рд╛ рдЬрд▓реНрджреА рд╕реЗ рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рд╡рд╛рдкрд╕ рд░реЛрд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрджрд┐ рдЖрдкрдиреЗ рдХрд╣реАрдВ рдЧрдбрд╝рдмрдбрд╝ рдХреА рд╣реИред
рд╕рд╛рдорд╛рдиреНрдп рд╢рдмреНрджреЛрдВ рдореЗрдВ рдпрд╣ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ,
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЖрджрд┐рдо рдкрд░рд┐рджреГрд╢реНрдп рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:0. рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕
рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЖрдзрд╛рд░ рдХреЗ рд╕рд╛рде
рдЖрд╡реЗрджрди рдХрд╛ 0 рд╕рдВрд╕реНрдХрд░рдг рд╣реИ (рд╕рдВрд╕реНрдХрд░рдг 0 рднреА) ред
1. рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рди, рд╣рдо рд╕рдордЭрддреЗ рд╣реИрдВ рдХрд┐ рдирдИ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕рдорд╛рдЪрд╛рд░ рдкрддреНрд░ рд╕рджрд╕реНрдпрддрд╛ рдкреНрд░рдгрд╛рд▓реА) рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рди рдХреЗрд╡рд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛрдб, рдмрд▓реНрдХрд┐ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рдВрд░рдЪрдирд╛ рдореЗрдВ рднреА рдмрджрд▓рд╛рд╡ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред
2. рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВрдЧреЗ рдХрд┐ рдХреЛрдб рдХреЗ рдЗрд╕ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рдВрд╕реНрдХрд░рдг 1 рд╣реЛрдЧрд╛ рдФрд░ рдирдП рдХреЛрдб рдХреЗ рд╕рд╛рде рд╣рдо 001 рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдмрдирд╛рдПрдВрдЧреЗ , рдЗрд╕рдХреЗ рд▓рд┐рдП рдЕрдкрдЧреНрд░реЗрдб рдФрд░ рдбреЗрдЯрд╛рдмреЗрд╕ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рджреЛрдиреЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ рд╣реБрдП (рдпрджрд┐ рдЖрдкрдХреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рд╡рд╛рдкрд╕ рд░реЛрд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ) )ред
3. рдлрд┐рд░ рд╣рдо рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреЗ рдЕрджреНрдпрддрди рд░реЛрд▓рд┐рдВрдЧ рддрдВрддреНрд░ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ - рдпрд╣ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдкреИрдирд▓ рдореЗрдВ рдПрдХ рдкреЗрдЬ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд╕реАрдПрд▓рдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рдПрдХ рд╕рдорд╛рдзрд╛рди, рдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рдгрд╛рд▓реА рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рддреЗ рд╕рдордп рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЕрдкрдбреЗрдЯ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
4. рд╕рд╛рдЗрдЯ рдкрд░ рдирдпрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛрдб рдЕрдкрд▓реЛрдб рдХрд░реЗрдВ, рд╡рд╛рдВрдЫрд┐рдд рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдорд╛рдЗрдЧреНрд░реЗрд╢рди рд╢реБрд░реВ рдХрд░реЗрдВ, рдФрд░ рд╡реЙрдЗрд▓рд╛!
рдЕрдм рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдХрд┐ рдЖрдкрдХреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ 3 рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдЧреНрд░рд┐рдо рд░реВрдк рд╕реЗ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдпрд╛ рдкрд░реАрдХреНрд╖рдг рд╕рд░реНрд╡рд░ рдкрд░ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдХреБрдЫ рдорд╣реАрдиреЗ рдкрд╣рд▓реЗ рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛? рдЖрд╕рд╛рди, рдмрд╕ рдХреЛрдб рдХреЛ рдмрджрд▓рдирд╛, рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╡рд╛рдВрдЫрд┐рдд рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдирд╛ (рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдзреАрд░реЗ-рдзреАрд░реЗ рд╣реЛрдЧрд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 4 рд╕реЗ 1 рд╕реЗ 3 рд╡реЗрдВ рдФрд░ 2 рд╡реЗрдВ, рдФрд░ рдлрд┐рд░ 1 рд╕рдВрд╕реНрдХрд░рдг рд░реЛрд▓ рд╣реЛрдЧрд╛)!
рдХреНрдпрд╛ рдЖрдк рдореЗрд░реА рддрд░рд╣ рдЗрд╕ рдЕрд╡рд╕рд░ рд╕реЗ рдкреНрд░реЗрд░рд┐рдд рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдЖрдЬрдорд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рдХреБрдЫ рднреА рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИ!
рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдЙрдкрдпреЛрдЧ
рддрдереНрдп рдХреА рдмрд╛рдд рдХреЗ рд░реВрдк рдореЗрдВ, рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЖрд╕рд╛рди рд╣реИ, рдФрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЗрд╕рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдХреЛрдб рдХреА рдХрд╛рдлреА рдХреБрдЫ рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЛ рд╕рд╣реА рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдмрдирд╛рдиреЗ рдХреА рдкреВрд░реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рджрд╕ рдорд┐рдирдЯ рдХрд╛ рд╕рдордп рдирд╣реАрдВ рд▓рдЧреЗрдЧрд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдЖрдкрдХреЛ рдФрд░ рдЖрдкрдХреЗ рд╕рд╣рдХрд░реНрдорд┐рдпреЛрдВ рдХреЛ рд╕рдорд╛рди рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рд╕реЗ рдмрдЪрд╛рдПрдЧрд╛ред
рд╡рд░реНрдЧ MY_M рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдмрдирд╛рдПрдБ
рдЗрд╕рд▓рд┐рдП, рд╢реБрд░реБрдЖрдд рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ
рдкреНрд░рд╡рд╛рд╕рди рд╡рд░реНрдЧ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдереЛрдбрд╝рд╛ рд╕рд╛
рдлрд╝рд╛рдЗрд▓ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдХреНрдпреЛрдВ? рд╕рдм рдХреБрдЫ рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИ, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдпрд╣ рд╡рд░реНрдЧ рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реИ рдХрд┐ рдбреЗрдЯрд╛рдмреЗрд╕ рдФрд░ рдХреЛрдб рдХреЗ рдХреМрди рд╕реЗ рд╕рдВрд╕реНрдХрд░рдг рд╡рд░реНрддрдорд╛рди рд╣реИрдВ, рдФрд░ рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЗрди рдЪреЗрдХреЛрдВ рдХреЛ рдкреВрд░реЗ рдХреЛрдб рдореЗрдВ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╣реА рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдПрдХ рдЬрдЧрд╣ рдкрд░ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред
рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо CodeIgniter рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдорд╛рдирдХ рд╡рд░реНрдЧ рд╡рд┐рд╕реНрддрд╛рд░ рдкрджреНрдзрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ - рдлрд╝рд╛рдЗрд▓
% site_path% / рдПрдкреНрд▓рд┐рдХреЗрд╢рди / рд▓рд╛рдЗрдмреНрд░реЗрд░реАрдЬрд╝ / MY_Migration.php рдХреЛрдб рдХреЗ рдХреБрдЫ рджрд░реНрдЬрди рд▓рд╛рдЗрдиреЛрдВ рдХреЗ рд╕рд╛рде
рдмрдирд╛рдПрдБ ред
рдпрд╣ рд╡рд░реНрдЧ рдкреВрд░реНрд╡рдЬреЛрдВ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд▓рд┐рдП 2 рдФрд░ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рддрд░реАрдХреЛрдВ рдХреЛ рдЬреЛрдбрд╝реЗрдЧрд╛:
public function get_db_version() { return parent::_get_version(); } public function get_fs_version() { return $this->_migration_version; }
рдиреЛрдЯ: рдЗрд╕рдХреЗ рдмрд╛рдж рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдХреЛрдб рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ рджреА рдЬрд╛ рд╕рдХрддреА рд╣реИ, рд▓реЗрдЦ рдХреЗ рдЕрдВрдд рдореЗрдВ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╕рднреА рдлрд╛рдЗрд▓реЛрдВ рдХрд╛ рд▓рд┐рдВрдХрдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рдВрд╕реНрдХрд░рдг рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
рд╕рдВрд░рдХреНрд╖рд┐рдд рдкрджреНрдзрддрд┐ рдХреЗ рд▓рд┐рдП рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЗрд╡рд▓ рд░реИрдкрд░ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рд╕реЗ
$ _migration_version рд╕рдВрд░рдХреНрд╖рд┐рдд рдЧреБрдг рд╣реИрдВ, рдФрд░ рдХрд╛рдлреА рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ
рдЗрдирдХреИрдкреНрд╕реБрд▓реЗрд╢рди рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд
рдХрд░рддрд╛ рд╣реИ ред
рдореИрдВ рдЖрдкрдХреЛ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдВрджреБ рдкрд░ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреА рднреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВ: рдореВрд▓
рдкреНрд░рд╡рд╛рд╕рди рд╡рд░реНрдЧ рдореЗрдВ рдПрдХ рд╕реАрдорд╛ рд╣реЛрддреА рд╣реИ, рдЬрд┐рд╕рдХреЗ рдХрд╛рд░рдг
рдЗрд╕рдХреЗ рдирд┐рд░реНрдорд╛рдгрдХрд░реНрддрд╛ рдХреЛ рдХреЗрд╡рд▓ рддрдм рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рдореВрд▓ рд╡рд░реНрдЧ рдХреЛ рдЖрд░рдВрднреАрдХреГрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИредрдЗрд╕рд▓рд┐рдП, рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореВрд▓ рдХреЗ рдмрдЬрд╛рдп рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ
MY_M рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдХреЛ рдЗрдирд┐рд╢рд┐рдпрд▓рд╛рдЗрдЬрд╝
рдХрд░рдирд╛ , рдкреИрд░реЗрдВрдЯ рдХреНрд▓рд╛рд╕ рдХреЗ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдХреЛ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдЗрд╕рдореЗрдВ рд▓рд╛рдЗрди 41 рдкрд░ рд╕реНрдерд┐рддрд┐ рдмрджрд▓ рд░рд╣реА рд╣реИ:
public function __construct($config = array()) {
рдкрд░
public function __construct($config = array()) {
рдПрдХ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдмрдирд╛рдПрдВ
рдЖрдзрд╛рд░ рд╡рд░реНрдЧ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рд╕реЗ рдорд╛рдорд▓рд╛ рдЫреЛрдЯрд╛ рд░рд╣ рдЬрд╛рддрд╛ рд╣реИред рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдпрд╛ рд░реЛрд▓ рдмреИрдХ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП,
рдорд╛рдЗрдЧреНрд░реЗрд╢рди рд╡рдВрд╢ рд╡рд░реНрдЧ (рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ
MY_M рдорд╛рдЗрдЧреНрд░реЗрд╢рди ) рдпреБрдХреНрдд рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред
рдЪреВрдВрдХрд┐ рдпрд╣ рд╣рдорд╛рд░рд╛ рдкрд╣рд▓рд╛ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рд╣реИ, рд╣рдо рдирд┐рдореНрди рдлрд╝рд╛рдЗрд▓
рдмрдирд╛рдПрдВрдЧреЗ :
% site_path% / рдПрдкреНрд▓рд┐рдХреЗрд╢рди / рдорд╛рдЗрдЧреНрд░реЗрд╢рди / 001_add_messages.php , рдЬрд┐рд╕рдореЗрдВ рдЕрдк рдФрд░ рдбрд╛рдЙрди рдлрд╝рдВрдХреНрд╢рди рд╢рд╛рдорд┐рд▓ рд╣реИрдВ:
<?php defined('BASEPATH') OR exit('No direct script access allowed'); class Migration_Add_messages extends MY_Migration { public function up() { $this->db->query(" CREATE TABLE IF NOT EXISTS `email_list` ( `list_id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT, `email` VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ) ENGINE=MyISAM;"); } public function down() { $this->db->query("DROP TABLE IF EXISTS `email_list`"); } }
рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдорд╛рдЗрдЧреНрд░реЗрд╢рди рд╡рд╛рд▓реА рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ 3-рдЯрд╛рд╕реНрдХрд┐рдВрдЧ рдбрд┐рдЬрд┐рдЯрд▓ рд╕реАрд░рд┐рдпрд▓ рдирдВрдмрд░ рдХреА рд╢реБрд░реБрдЖрдд рд╣реЛрддреА рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╡реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдЙрдирдореЗрдВ рдирд┐рд╣рд┐рдд рд╡рд░реНрдЧ рдХреЛ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд╣рд╛рдВ рд╕рдВрд╕реНрдХрд░рдг рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдмрдЬрд╛рдп
рдорд╛рдЗрдЧреНрд░реЗрд╢рди_ рд╣реИ ред
рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ
рдЕрдВрдд рдореЗрдВ, рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ
% site_path% / рдПрдкреНрд▓рд┐рдХреЗрд╢рди / config / mig.php рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреЙрдиреНрдлрд┐рдЧ рдХреЛ рдереЛрдбрд╝рд╛ рдЯреНрд╡реАрдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ, рджреЗрдЦреЗрдВ рдХрд┐ рд╣рдорд╛рд░реЗ рдХреЛрдб рдХреЛ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рдкрде рдФрд░ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (рдорд╛рдирдХ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рд╕реЗ рдХрд╛рдЯ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ) рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ):
$config['migration_enabled'] = TRUE; $config['migration_version'] = 1; $config['migration_path'] = APPPATH . 'migrations/';
рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдореИрдВрдиреЗ 1 рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рд╕рдВрдХреЗрдд рджрд┐рдпрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рд╣рдордиреЗ рдкрд╣рд▓реЗ рд╣реА рдореЗрд▓рд┐рдВрдЧ рд╕реВрдЪреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд░ рд▓реА рд╣реИред
рдкрд░рд┐рдгрд╛рдо
рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╣рдордиреЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреА рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреЛ рдереЛрдбрд╝рд╛ рд╕реБрдзрд╛рд░ рджрд┐рдпрд╛, рдЗрд╕рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд┐рдпрд╛, рдореВрд▓ рд╡рд░реНрдЧ рдХреЗ рдЙрддреНрддрд░рд╛рдзрд┐рдХрд╛рд░ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрдорд╛рдгрдХрд░реНрддрд╛ рдХреА рдЬрд╛рдВрдЪ рд╕реЗ рдЬреБрдбрд╝реЗ рдЧрдбреНрдвреЗ рдХреЛ рджрд░рдХрд┐рдирд╛рд░ рдХрд░ рджрд┐рдпрд╛, рдФрд░ рдпрд╣ рднреА рд╕реАрдЦрд╛ рдХрд┐ рдкрд▓рд╛рдпрди рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рдЬрд╛рдПред
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдмрдирд╛рдиреЗ рдореЗрдВ рдХреБрдЫ рднреА рдЬрдЯрд┐рд▓ рдирд╣реАрдВ рд╣реИ, рдФрд░, рдлрд┐рд░ рд╕реЗ, рд╡реЗ рдЖрдкрдХреЛ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд░рд╛рд╢рд┐ рдмрдЪрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╡рд░реНрддрдорд╛рди рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЙрдирдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рднреА рдХреЛрдИ рдХрдард┐рдирд╛рдИ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рд╡реИрд╕реЗ, рдмрд╕ рдкрд░рд┐рдЪрдп рдореЗрд░реЗ рджреВрд╕рд░реЗ рд▓реЗрдЦ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдкрд┐рдд рд╣реЛрдЧрд╛, рдЬреЛ рдмрд╣реБрдд рдирд┐рдХрдЯ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛ред
рдкреВрд░реНрдг рд╕реНрд░реЛрддреЛрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдЧреНрд░рд╣ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВрднрд╛рдЧ рджреЛ: рдбреЗрдЯрд╛рдмреЗрд╕ рдорд╛рдЗрдЧреНрд░реЗрд╢рди - рдЖрдкрдХреЗ рдЖрд╡реЗрджрди рдХреЗ рд╕рд╛рде рдПрдХреАрдХрд░рдгрдкреБрдирд╢реНрдЪ: рдХреЛрдбрдЗрдЧреНрдирд┐рдЯрд░ рдмреНрд▓реЙрдЧ рдкрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдХрд░реНрдо рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЕрдм рдореИрдВ рд╕рд╛рдорд╛рдиреНрдп php рдмреНрд▓реЙрдЧ рдкреНрд░рдХрд╛рд╢рд┐рдд рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдБUPD: рдЕрдЪреНрдЫрд╛ рдЕрдирд╛рдо рдиреЗ рдереЛрдбрд╝рд╛ рдХрд░реНрдо рдбрд╛рд▓рд╛, рдХреЛрдбрдирд┐рдЧреНрдиреЗрдЯ рдмреНрд▓реЙрдЧ рдкрд░ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛