рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдЕрдЧреНрд░рджреВрдд
рдореИрдВ рдЕрднреА рджреЛ рд╕рд╛рд▓ рдХреЗ рд▓рд┐рдП
Yii рдореЗрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдФрд░ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рд╕рд┐рдореНрдлрдиреА рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЛ рдШреВрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ рд╣реИред рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ, рдореИрдВ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕реЛрдЪрд╛ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХреЗ рд▓рд┐рдП рдЖрдХрд░реНрд╖рд┐рдд рд╣реВрдВ, рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдШрдЯрдХреЛрдВ рдХреА рдХрдордЬреЛрд░ рдХрдиреЗрдХреНрдЯрд┐рд╡рд┐рдЯреА, рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдирд┐рд░реНрдорд┐рдд рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХрд╛ рд▓рдЪреАрд▓рд╛рдкрдиред рдирдП рдврд╛рдВрдЪреЗ рдХреЗ рдореБрдЦреНрдп рдЙрдкрдХрд░рдг рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж, рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдЗрд╕ рдкрд░ рдПрдХ рд╕реАрдПрдордПрд╕ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд┐рдпрд╛ рдЬрд╛рдП, рдпрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╕рдорд╛рдкреНрдд рдПрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
рдПрдХ рдмреЙрдХреНрд╕ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЕрднреА рддрдХ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХрд┐рд╕реА рддрд░рд╣ рдореИрдВ рд╕рд┐рдореНрдлрдиреА рд╕реАрдПрдордПрдл рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдореЗрдВ рднрдЯрдХ рдЧрдпрд╛ рдФрд░ рдЙрди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдореМрдХреЗ рдкрд░ рдорд╛рд░рд╛ рдЧрдпрд╛ рдерд╛ рдЬрдм рдореБрдЭреЗ рдХреБрдЫ рдбреНрд░реБрдкрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рдбрд┐рдЬрд╛рдЗрди рдЦреАрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд╕реЗрдВрдмрд▓реА рд▓рд╛рдЗрди рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рдереЗред рд╣рдмреЗрд░рд╛ рдкрд░, рд╕реАрдПрдордПрдл рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рднреА рдкреНрд░рдХрд╛рд╢рди рдирд╣реАрдВ рд╣реИрдВ, рдФрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдЕрднреА рднреА рдмрд╣реБрдд рдХрдЪреНрдЪрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рднрд╡рд┐рд╖реНрдп рдореЗрдВ рд╕рдм рдХреБрдЫ рджрд┐рд▓рдЪрд╕реНрдк рд▓рдЧ рд░рд╣рд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХреБрдЫ рдЬрдЧрд╣реЛрдВ рдкрд░ рд╢рд┐рдХрд╛рдпрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╣реИред
рд╕рд┐рдореНрдлрдиреА рд╕реАрдПрдордПрдл
рд╕рд┐рдореНрдлрдиреА рд╕реАрдПрдордПрдл рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рд╕реАрдПрдордПрд╕ рдореЗрдВ рдирд┐рд╣рд┐рдд рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬреЛ рд╣рд░ рдХрд┐рд╕реА рдХреЗ рд▓рд┐рдП рд╕рд┐рдореНрдлрдиреА рдлреНрд░реЗрдорд╡рд░реНрдХ 2 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред
рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рдореБрдЦреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ:
- рдЦрд░рд╛рдм рдШрдЯрдХ рдХрдиреЗрдХреНрдЯрд┐рд╡рд┐рдЯреА
- scalability
- рд╕реБрд╡рд┐рдзрд╛
- testability
рдпрд╣
рд╕реАрдПрдордПрдл рд╢рдмреНрдж рдкрд░ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ - рдкрд░рд┐рдпреЛрдЬрдирд╛ рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рд╕реАрдПрдордПрд╕ рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдПрдХ
рд░реВрдкрд░реЗрдЦрд╛ рд╣реИ ред рд╕реАрдПрдордПрд╕ рдХреЗ рд╡рд┐рдкрд░реАрдд, рдЬрд╣рд╛рдВ рд╕рднреА рдШрдЯрдХ рдПрдХ-рджреВрд╕рд░реЗ рд╕реЗ рд╕рдЦреНрддреА рд╕реЗ рдмрдВрдзреЗ рд╣реЛрддреЗ рд╣реИрдВ, рд╕рд┐рдореНрдлрдиреА рд╕реАрдПрдордПрдл рдореЗрдВ рдЖрдк:
- рдЬреЛ рдЪрд╛рд╣реЛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░реЛ
- рдЬреЛ рдЖрдкрдХреЛ рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИ рдЙрд╕реЗ рдмрджрд▓реЗрдВ
- рдЬреЛ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ рдЙрд╕реЗ рдЕрдирджреЗрдЦрд╛ рдХрд░реЗрдВ
рдпрд╣реА рд╣реИ, рдЖрдкрдХреЛ рдореЙрдбреНрдпреВрд▓рд░ рд╡рд┐рдХрд╛рд╕ рдЙрдкрдХрд░рдг рдХрд╛ рдПрдХ рд╕реЗрдЯ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рди рдХрд┐ рдЯрд░реНрдирдХреА рдЯрд░реНрдирдХреА рдПрдкреНрд▓рд┐рдХреЗрд╢рди, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдмреБрдирд┐рдпрд╛рджреА рдмрдВрдбрд▓ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдП рдЧрдП рд╣реИрдВ рдЬреЛ рд╕реАрдПрдордПрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред
рдПрдХ рдФрд░ CMF рдХреНрдпреЛрдВ?
рдпрд╣ рдХреЛрдИ рд░рд╣рд╕реНрдп рдирд╣реАрдВ рд╣реИ рдХрд┐ рдмрд╛рдЬрд╛рд░ рдкрд░ рдмрд╣реБрдд рд╕рд╛рд░реЗ рддреИрдпрд╛рд░ рдЙрддреНрдкрд╛рдж рд╣реИрдВ, рджреЛрдиреЛрдВ рдХрд╛ рднреБрдЧрддрд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (1C-Bitrix, UMI) рдФрд░ рдореБрдлреНрдд (Drupal, MODx, Wordpress, Joomla)ред рдЗрд╕рд▓рд┐рдП, рдпрд╣ рддрд░реНрдХрд╕рдВрдЧрдд рд╣реИ рдХрд┐ рдЬрдм рдЖрдк
рдЬреЛ рднреА рд╕реАрдПрдордПрд╕ / рд╕реАрдПрдордПрдл рд╢рд┐рд▓рд╛рд▓реЗрдЦ рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рд╕рд╡рд╛рд▓ рдЙрда рд╕рдХрддрд╛ рд╣реИ
рдХрд┐ рд╣рдореЗрдВ рдПрдХ рдФрд░ рдПрдордПрдордПрд╕ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ? рд╡реЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрддрдиреЗ рднрд░реЗ рд╣реБрдП рд╣реИрдВредрдФрд░ рдореИрдВ рдмрд┐рд▓рдХреБрд▓ рд╕рд╣рдордд рд╣реВрдВред рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВред
рд╕реАрдПрдордПрд╕ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рджрд░реНрдЬрди рд╕реЗ рдЕрдзрд┐рдХ рд╣реИред рд▓реЗрдХрд┐рди рдПрдХ рдбреЗрд╡рд▓рдкрд░ рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВ рдЕрдХреНрд╕рд░ рдкрд╕реАрдирд╛, рдЦреВрди рдФрд░ рдЖрдБрд╕реВ рдмрд╣рд╛рддрд╛ рд╣реВрдВ, рдЙрдирд╕реЗ рдХреБрдЫ рдФрд░ рдкрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддрд╛ рд╣реВрдВ, рдХреБрдЫ рдРрд╕рд╛ рдЬреЛ рдореВрд▓ рдкреНрд░рдгрд╛рд▓реА рдФрд░ рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд▓реЗрдЦрдХреЛрдВ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рддреИрдпрд╛рд░ рдХрд┐рдП рдЧрдП рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рджреМрд░рд╛рди рдЕрдкрд░реНрдпрд╛рдкреНрдд рд░реВрдк рд╕реЗ рд╕реЛрдЪрд╛ рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХреЗ рдХрд╛рд░рдг, рдЖрдкрдХреЛ рдЗрд╕рд╕реЗ рдирд┐рдкрдЯрдирд╛ рд╣реЛрдЧрд╛:
- рддрд░реНрдХ, рд╡рд┐рдиреНрдпрд╛рд╕, рд╕рд╛рдордЧреНрд░реА рдФрд░ рдкреНрд░рд╕реНрддреБрддрд┐ рдХреЗ рд╕реНрдкрд╖реНрдЯ рдкреГрдердХреНрдХрд░рдг рдХрд╛ рдЕрднрд╛рд╡ред рдпрд╣ рдбреНрд░реВрдкрд▓ рдореЙрдбреНрдпреВрд▓ рдХреЛ рдпрд╛рдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ - рдлрд╛рдЗрд▓реЛрдВ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛, рдЕрддреБрд▓рдиреАрдп рд╡реИрд╢реНрд╡рд┐рдХ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдПрдХ рд╕рдореВрд╣, рд╣реБрдХ рдФрд░ рдЕрдиреНрдп рдЪреАрдЬреЗрдВред рд╡реИрд╕реЗ, рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд▓реЗрдЦ
- рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рд╕реЗ рд╢реЗрд╖ рд╡рд┐рд░рд╛рд╕рдд рдХреЛрдб рдХрд╛ рдПрдХ рдмрд╣реБрддред рд╕рдордп-рд╕рдордп рдкрд░, рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рд╡реЗ рдХрд░реНрдиреЗрд▓ рдФрд░ рдЕрдиреНрдп рдЦреБрд╢рд┐рдпреЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдиреЗ рдХрд╛ рд╡рд╛рджрд╛ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЬрдм рддрдХ рдХрд┐ рдирдпрд╛ (рдкреБрдирд░реНрд▓реЗрдЦрди) рд╕рдВрд╕реНрдХрд░рдг "рдордВрдЪ" рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛, рддрдм рддрдХ рдмрд╣реБрдд рд╕рдордп рдмреАрдд рд╕рдХрддрд╛ рд╣реИ
- рдЕрдХреНрд╕рд░ рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рд╡рд┐рдХрд╛рд╕, рдкрд░реАрдХреНрд╖рдг рдЬреИрд╕реА рдХреЛрдИ рдЕрд╡рдзрд╛рд░рдгрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ рдФрд░ рддреИрдирд╛рддреА рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЙрдкрдХрд░рдг рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ
- рдХреИрд╢рд┐рдВрдЧ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рдПрдВред рдХрд╣реАрдВ рдпрд╣ рдирд╣реАрдВ рд╣реИ, рдХрд╣реАрдВ рдпрд╣ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдкрд░реНрдпрд╛рдкреНрдд рдорд╛рддреНрд░рд╛ рдореЗрдВ рд▓рдЪреАрд▓рд╛рдкрди рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдпрд╛ рд╡рд┐рдХрд▓рд╛рдВрдЧрддрд╛ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВ, рдпрд╛ рдпрд╣ рд╕рд┐рд░реНрдл рдмрдЪрдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЖрджрд┐ред
- рдмрдбрд╝реЗ рдкрд░ рдХрдо рдкреНрд░рджрд░реНрд╢рди (рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдПрдХ рд╕рд╛рдкреЗрдХреНрд╖ рдЕрд╡рдзрд┐) рдбреЗрдЯрд╛ рд╡реЙрд▓реНрдпреВрдо
- рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдШрдЯрдХреЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдпрд╛ рдореМрдЬреВрджрд╛ рд▓реЛрдЧреЛрдВ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдореЗрдВ рдХрдард┐рдирд╛рдИ
- рдЖрдкрдХреЛ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░реЛрдВ рдХреЗ рдмреАрдЪ рдЪрдпрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдпрд╛ рддреЛ рд╕рдВрдмрдВрдзрдкрд░рдХ DBMS рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ EAV рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ рд╕рд╛рде рд╕рд╛рдордЧреНрд░реА рд╣реЛ, рдпрд╛ рдЗрд╕рд╕реЗ рднреА рдмрджрддрд░ рд╣реЛ
- рд╕реАрдПрдордПрд╕ рдХреЗ рд▓реЗрдЦрдХреЛрдВ рджреНрд╡рд╛рд░рд╛ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдХреА рдЧрдИ рдЕрд╕рд╣рдЬ рдЯреЗрдореНрдкрд▓реЗрдЯ-рдмрд╛рдЗрдХ ...
- ... рдФрд░ рдпрд╣ рд╕рдм NIH рд╕рд┐рдВрдбреНрд░реЛрдо рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдкред
рдЗрди рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХрдорд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ рдФрд░ рдЖрд░реЛрдкреЛрдВ рдХреЛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдлрд┐рд▓рд╣рд╛рд▓ рдЗрди рд╕рднреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╣рдордиреЗ рдмрд┐рд▓реНрдХреБрд▓ рднреА рд╢рдкрде рдирд╣реАрдВ рд▓реА рд╣реИ, рд╣рдо рдмреЗрд╣рддрд░ рддрд░реАрдХреЗ рд╕реЗ рдХрдИ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рддреИрдпрд╛рд░ рдХрд░реЗрдВрдЧреЗ рдЬрд┐рдиреНрд╣реЗрдВ CMS рдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд▓рд┐рдП рд╣рд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдлрд┐рд░ рджреЗрдЦреЗрдВ рдХрд┐ рдпреЗ рд╕рдорд╕реНрдпрд╛рдПрдБ рд╕рд┐рдореНрдлрдиреА CMF рдореЗрдВ рдХреИрд╕реЗ рд╣рд▓ рдХреА рдЬрд╛рддреА рд╣реИрдВред рддреЛ рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВ:
- рдбреЗрдЯрд╛ рднрдВрдбрд╛рд░рдг
- рдЯреЗрдореНрдкрд▓реЗрдЯ рдкреНрд░рдгрд╛рд▓реА
- рдЕрдиреБрдорд╛рд░реНрдЧрдг, рд╕реАрдПрдирд╕реА, рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдпрд╣ рд╕рдм рдХреИрд╕реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
- рдореЗрдиреВ рд╕реЗрдЯрд┐рдВрдЧ
- рд╕рд╛рдордЧреНрд░реА рдкреНрд░рдмрдВрдзрди (рдкреГрд╖реНрда рдкрд░ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдмреНрд▓реЙрдХ, рд▓рд╛рдЗрд╡ рд╕рд╛рдЗрдЯ рдкрд░ рдлреНрд░рдВрдЯ-рдПрдВрдб рд╕рдВрдкрд╛рджрди, рдлрд╝рд╛рдЗрд▓ рдЕрдкрд▓реЛрдб)
- i18n
- рдЕрдЪреНрдЫрд╛ рдкреНрд░рд╢рд╛рд╕рди
рдЪрд▓реЛ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред
рдбрд╛рдЯрд╛ рд╕реНрдЯреЛрд░реЗрдЬ рдХреА рд╕рдорд╕реНрдпрд╛
рд╕реАрдПрдордПрд╕ рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдХреА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рд╕реАрдПрдордПрд╕ рдХрд╛ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдШрдЯрдХ рдбреЗрдЯрд╛ рднрдВрдбрд╛рд░рдг рд╣реИред рдЗрд╕рд╕реЗ рднреА рдЕрдзрд┐рдХ -
рд╕реАрдПрдордПрд╕ рдХреЛ рд╡рд┐рднрд┐рдиреНрди рдЧреБрдгреЛрдВ рдХреЗ рд╕рд╛рде рдбреЗрдЯрд╛ рднрдВрдбрд╛рд░рдг рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП ред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, BlogPost рдпрд╛ NewsItem рдЬреИрд╕реА рд╕рд╛рдордЧреНрд░рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП, рдЖрдк рд╕рд╛рдорд╛рдиреНрдп
title
рдФрд░
body
рдлрд╝реАрд▓реНрдб рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдЕрдВрддрд░ рдЬрд╛рдПрдВрдЧреЗ - рдЖрдкрдХреЛ рд╕рдорд╛рдЪрд╛рд░ рдХреЛ рдЪрд┐рддреНрд░ рд╕рдВрд▓рдЧреНрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред
рдПрдХ рдСрдирд▓рд╛рдЗрди рд╕реНрдЯреЛрд░ рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░реЛред рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдХреНрдпрд╛ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реИ? рдХрдо рд╕реЗ рдХрдо, рдЙрддреНрдкрд╛рдж рд╡рд┐рд╡рд░рдг рдФрд░ рдЖрджреЗрд╢ рдЗрддрд┐рд╣рд╛рд╕ред рдкрд╣рд▓реЗ рдХреЗ рд╡рд┐рдкрд░реАрдд, рджреВрд╕рд░реЗ рдХреЗ рд▓рд┐рдП рд╕реНрдЯреЛрд░реЗрдЬ рд╕реНрдХреАрдо рдбрд┐рдЬрд╛рдЗрди рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рджреЛрдиреЛрдВ рдПрдХ-рджреВрд╕рд░реЗ рдХреЗ рдмрд┐рдирд╛ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗред рдЗрд╕рд▓рд┐рдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЖрд╡рд╢реНрдпрдХрддрд╛:
рд╕реАрдПрдордПрд╕ рдХреЛ рд╕реАрдПрдордПрд╕ рдХреЗ рдЕрдВрджрд░ рдФрд░ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдЕрдиреНрдп рд╣рд┐рд╕реНрд╕реЛрдВ рдореЗрдВ рд╕рд╛рдордЧреНрд░реА рд╕реЗ рд▓рд┐рдВрдХ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП ред
рд╕рд╛рдЗрдЯ рдкрд░ рд╕реНрд╡рдпрдВ рд╕рд╛рдордЧреНрд░реА рдЕрдХреНрд╕рд░ рдПрдХ рдкреЗрдбрд╝ рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЗ рд░реВрдк рдореЗрдВ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рд╣реЛрддреА рд╣реИ, рдХреБрдЫ рд╣рдж рддрдХ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рджреЛрд╣рд░рд╛рддреА рд╣реИред рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рд╕рд╛рдЗрдЯ рдХреЗ рд▓реЗрдЦрдХ рдЕрдкрдиреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╡рд┐рднрд┐рдиреНрди рддрд░реАрдХреЛрдВ рд╕реЗ рд╕рд╛рдордЧреНрд░реА рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд╕рд╛рде рд╣реА рд╕рд╛рде рд╕рд╛рдордЧреНрд░реА рдХреЗ рдореЗрдиреВ рдФрд░ рдкрддреЗ рдХреЛ рднреА рд▓рдЪреАрд▓реЗ рдврдВрдЧ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕ рдкреНрд░рдХрд╛рд░,
рд╕реАрдПрдордПрд╕ рдХреЛ рдПрдХ рдкреЗрдбрд╝ рдХреА рд╕рдВрд░рдЪрдирд╛ рдореЗрдВ рдбреЗрдЯрд╛ рдкреЗрд╢ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░
рдПрдХ рд╣реА рд╕рдордп рдореЗрдВ рдХрдИ рд╕реНрд╡рддрдВрддреНрд░ рдкреЗрдбрд╝реЛрдВ рдХреА рд╕реЗрд╡рд╛ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП ред
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ CMS рдореЗрдВ рдмрдВрдж рдХрд░рдиреЗ рд╡рд╛рд▓реА рдЬрд╛рдирдХрд╛рд░реА рд╢рд╛рдпрдж рд╣реА рдХрднреА рд╕рдВрд░рдЪрд┐рдд рд╣реЛрддреА рд╣реИред рдХрднреА-рдХрднреА, рдПрдХ, рджреВрд╕рд░реЗ, рддреАрд╕рд░реЗ, рджрд╕рд╡реЗрдВ рдХреНрд╖реЗрддреНрд░ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ -
рд╕реАрдПрдордПрд╕ рдХреЛ рд╕рд╛рдордЧреНрд░реА рдХреЗ рд▓рд┐рдП рдПрдХрд▓ рдпреЛрдЬрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП , рдпрд╛ рдЗрд╕рд╕реЗ рднреА рдмреЗрд╣рддрд░,
рдЕрдкрдиреА рдЦреБрдж рдХреА рдпреЛрдЬрдирд╛ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рджреЗрдВ ред
рдмрдбрд╝реЗ рд╕рдВрдЧрдардиреЛрдВ рдореЗрдВ, рд╕рд╛рдЗрдЯ рдкрд░ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╕рддреНрдпрд╛рдкрди рдХреЗ рдХрдИ рдЪрд░рдгреЛрдВ рд╕реЗ рдЧреБрдЬрд░рдирд╛ рд╕рд╛рдордЧреНрд░реА рдХреЗ рд▓рд┐рдП рдЕрд╕рд╛рдорд╛рдиреНрдп рдирд╣реАрдВ рд╣реИ, рдПрдХ рдХреНрд▓рд┐рдХ рдХреЗ рд╕рд╛рде рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп -
рд╕реАрдПрдордПрд╕ рдХреЛ рдкреЗрдбрд╝реЛрдВ рдХреЗ рдмреАрдЪ рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рдВрдЪрд▓рди рдФрд░ рдирд┐рд░реНрдпрд╛рдд рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП ред рдФрд░ рдЗрддрд┐рд╣рд╛рд╕ рдХреЗ рд▓рд┐рдП,
рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рд░рдЦрдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдЬрд┐рдиреНрд╣реЗрдВ рдХрд┐рд╕реА рднреА рд╕рдордп рдмрд╣рд╛рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдпрд╣ рдЕрдиреНрдп рджреЗрд╢реЛрдВ рдФрд░ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдпрд╛рдж рд░рдЦрдиреЗ рдпреЛрдЧреНрдп рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐ рдХрд┐рд╕реА рдХреЛ рднреА рдЖрдо рддреМрд░ рдкрд░ рдкреВрд░реА рд╡реЗрдмрд╕рд╛рдЗрдЯ рдХреЛ рдХрд┐рд╕реА рдЕрдиреНрдп рднрд╛рд╖рд╛ рдореЗрдВ рдЕрдиреБрд╡рд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ,
рд╕реАрдПрдордПрд╕ рдХреЛ рд╡рд┐рднрд┐рдиреНрди рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рд╕рд╛рдордЧреНрд░реА рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП, рдЬрд┐рд╕рдореЗрдВ рджрд┐рдП рдЧрдП рдирд┐рдпрдореЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╡рд╛рдкрд╕реА рд╣реЛ ред
рдЬрдм рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕рд╛рдордЧреНрд░реА рд╣реЛрддреА рд╣реИ, рддреЛ рдПрдХ
рдкреВрд░реНрдг-рдкрд╛рда рдЦреЛрдЬ ,
рдЙрдкрдкреНрд░рдХрд╛рд░реЛрдВ рддрдХ рдкрд╣реБрдВрдЪ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдпрдореЛрдВ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛, рдФрд░
рдХрдИ рд▓реЗрдЦрдХреЛрдВ рджреНрд╡рд╛рд░рд╛ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рд╕рд╣рд╛рдпрддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА (рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рд╣рд░ рдХрд┐рд╕реА рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ рд╣реИ)ред
рд╕рд╛рдордЧреНрд░реА рднрдВрдбрд╛рд░
рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдПрдХ "рдорд╛рдВрд╕рдкреЗрд╢реА" рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдирд╣реАрдВ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВред рд╕рдВрдмрдВрдзрдкрд░рдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗрд╡рд▓ рдРрд╕реЗ рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реЛрдВрдЧреЗ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдЬреИрд╕реЗ рдХрд┐ рдореИрдЯреЗрд░рд┐рдпрд▓рд╛рдЗрдЬреНрдб рдкрде рдпрд╛ рдиреЗрд╕реНрдЯреЗрдб рд╕реЗрдЯ рд╣реИрдВ, рдЬреЛ рдЖрдкрдХреЛ рдлреНрд▓реИрдЯ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдЧреНрд░рд╛рдлрд╝ рд╕рдВрд░рдЪрдирд╛ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдПрдХ рднреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛рдо рдХрд░реЗрдЧрд╛, рддреЛ рдпрд╣ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЗрдВрдЬрди рд╕реЗ рдмрдВрдзрд╛ рд╣реЛрдЧрд╛, рдФрд░ рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЦрд░рд╛рдм рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╣рдореЗрдВ рд╕реНрд╡рддрдВрддреНрд░рддрд╛ рдФрд░ рд▓рдЪреАрд▓реЗрдкрди рд╕реЗ рд╡рдВрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИред RDBMS рдХреЛ рджреЛрд╖ рджреЗрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ - рд╡реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдП рдЧрдП рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рд╡рд░реНрдгрд┐рдд рдбреЗрдЯрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рди рдХрд┐ рдХрдордЬреЛрд░ рд╕рдВрд░рдЪрд┐рдд рддрддреНрд╡реЛрдВ рд╡рд╛рд▓реЗ рдкреЗрдбрд╝реЛрдВ рдХреАред
рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╣рдо рдкрд░реЗрд╢рд╛рди рдирд╣реАрдВ рд╣реБрдП - рдЖрдЦрд┐рд░рдХрд╛рд░, рд╣рдо рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдХрдВрдЯреЗрдВрдЯ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА, рдпрд╛
рдХрдВрдЯреЗрдВрдЯ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ рд╕рд╛рде рдЖрдП рд╣реИрдВ, рдЕрдЧрд░ рдЖрдк рдмреБрд░реНрдЬреБрдЖ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕ рдбреЗрдЯрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╡рд╛рд▓реЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛, рдкрдврд╝рдиреЗ, рд▓рд┐рдЦрдиреЗ рдФрд░ рдбреЗрдЯрд╛ рдХреЛ рдкреБрдирдГ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╣реБрдБрдЪ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдбреЗрдЯрд╛ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдХреЗ рддрд╛рд░реНрдХрд┐рдХ рдкрд╣рд▓реВ рдкрд░ рдЬреЛрд░ рджреЗрдиреЗ рд╡рд╛рд▓рд╛ рдбреЗрдЯрд╛ рд╡реЗрдпрд░рд╣рд╛рдЙрд╕ рд╣реИред
JCR-170
рджрд╕реНрддрд╛рд╡реЗрдЬрд╝-рдЙрдиреНрдореБрдЦ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рд╕рдВрдЧреНрд░рд╣рдг рдХреА рд╕рдорд╕реНрдпрд╛ рдХрдИ рд╕рд╛рд▓ рдкрд╣рд▓реЗ рдкреИрджрд╛ рд╣реБрдИ рдереА, рдЗрд╕рд▓рд┐рдП, 2000 рдХреЗ рджрд╢рдХ рдХреА рдкрд╣рд▓реА рдЫрдорд╛рд╣реА рдореЗрдВ, рдбреЗ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ (рдЕрд░реНрдерд╛рддреН рдбреЗрд╡рд┐рдб рдиреНрдпреВрдХреНрд▓рд┐рдпрд░) рдХреЗ рд▓реЛрдЧреЛрдВ рдиреЗ рдЬрд╛рд╡рд╛ рдХрдореНрдпреБрдирд┐рдЯреА рдкреНрд░реЛрд╕реЗрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬрд╛рд╡рд╛ (рдЬреЗрд╕реАрдЖрд░
) рд╡рд┐рдирд┐рд░реНрджреЗрд╢рди рдХреЗ
рд▓рд┐рдП рдХрдВрдЯреЗрдВрдЯ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдПрдкреАрдЖрдИ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛, рдЬреЛ рд╕реАрд░рд┐рдпрд▓ рдирдВрдмрд░ 170 рдХреЛ рд╕реМрдВрдкрд╛ рдЧрдпрд╛ рдерд╛ред рдмрд╛рдж рдореЗрдВ, рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рд╕рдВрдЦреНрдпрд╛ JSR-283 (2.0), JSR-333 (2.1, рдЕрдВрддрд┐рдо рдорд╕реМрджрд╛ 31 рдЕрдЧрд╕реНрдд рдХреЛ рдкреВрд░рд╛ рд╣реЛ рдЧрдпрд╛ рдерд╛) рдХреЗ рддрд╣рдд рд╣реБрдЖ, рд▓реЗрдХрд┐рди рдЕрдм рддрдХ рдкрд╣рд▓реЗ рд╡рд┐рдХрд▓реНрдк рдХрд╛ рд▓рд┐рдВрдХ рдЕрдзрд┐рдХ рдЖрдо рд╣реИред
рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдбреЗрдЯрд╛рдмреЗрд╕ рд╣реИ рдЬреЛ рдкрджрд╛рдиреБрдХреНрд░рдорд┐рдд рдбреЗрдЯрд╛ рдХрд╛ рднрдВрдбрд╛рд░рдг, рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддрд┐ рдФрд░ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддрд┐ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкреНрд░рджрд╛рди рдХреА рдЧрдИ API рдЖрдкрдХреЛ XML рдореЗрдВ рдбреЗрдЯрд╛ рд╕рдВрд╕реНрдХрд░рдг, рд▓реЗрдирджреЗрди, рдкрд░рд┐рд╡рд░реНрддрди рдЯреНрд░реИрдХрд┐рдВрдЧ, рдЖрдпрд╛рдд / рдирд┐рд░реНрдпрд╛рдд рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдФрд░ рдмрд╛рдЗрдирд░реА рдФрд░ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХреЛ рднреА рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИред
рдЗрд╕ рддрд░рд╣ рдХреЗ рднрдВрдбрд╛рд░ рдХреЛ рдиреЛрдбреНрд╕ рдХреЗ рдПрдХ рдкреЗрдбрд╝ рдХреЗ рд░реВрдк рдореЗрдВ рдЖрдпреЛрдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЧреБрдг рд╣реЛрддреЗ рд╣реИрдВред рдбреЗрдЯрд╛ рд╕реАрдзреЗ рдЙрдирдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдпрд╣ рд╕рдВрдЦреНрдпрд╛, рддрд╛рд░, рдпрд╛ рдордирдорд╛рдирд╛ рд▓рдВрдмрд╛рдИ рдХрд╛ рджреНрд╡рд┐рдЖрдзрд╛рд░реА рдбреЗрдЯрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдиреЛрдбреНрд╕ рдХреЛ рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдмрд╛рд▓ рдиреЛрдбреНрд╕, рдХреБрдЫ рд╡реНрдпрд╡рд╣рд╛рд░ рд╕рдВрдмрдВрдзреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВ, рдпрд╛ рдмрд╕ рдкрдбрд╝реЛрд╕рд┐рдпреЛрдВ рдХреЛ рджреЗрдЦреЗрдВ (рдПрдХ рд╡рд┐рд╢реЗрд╖ рд╕рдВрдкрддреНрддрд┐ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб рдХреЗ рдкрд╛рд╕ рдПрдХ рдЕрджреНрд╡рд┐рддреАрдп рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ)ред
рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХреЗ рджреВрд╕рд░реЗ рд╕рдВрд╕реНрдХрд░рдг рд╕реЗ рд╢реБрд░реВ рд╣реЛрдХрд░, рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдПрд╕рдХреНрдпреВрдПрд▓ рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рдЬрд╡рд╛рдм рджреЗрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреЛ рдХрд┐ рдкрд╣рд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рд╕реЗ рдЙрдирдХреЗ XPath рд╕рдордХрдХреНрд╖реЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИред
рдЗрд╕ рддрд░рд╣ рдХреА рдЦреБрд╢реА рдХреА рдкреНрд░рд╛рдкреНрддрд┐ рдХреЗ рдПрдХ рдЬреНрд╡рд▓рдВрдд рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ,
рдЕрдкрд╛рдЪреЗ рдЬреИрдХрдмрдмрд┐рдЯ рдкрд░рд┐рдпреЛрдЬрдирд╛, рдЬрд╛рд╡рд╛ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдПрдХ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рднрдВрдбрд╛рд░ рд╣реИ, рдЬрд┐рд╕реЗ рдПрдХрд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рд╕рднреА рдЕрдЪреНрдЫрд╛рдЗрдпреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдпрд╣ рдкрд░рд┐рдпреЛрдЬрдирд╛ (2004 рдореЗрдВ рдЬреЗрд╕реАрдЖрд░ рдПрдкреАрдЖрдИ рдХреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд░реВрдк рдореЗрдВ рд╢реБрд░реВ рд╣реБрдИ) рд╕рд╛рдордЧреНрд░реА рддрдХ рдкрд╣реБрдВрдЪ рдХреЛ рд▓рдЪреАрд▓реЗ рдврдВрдЧ рд╕реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИред рдЗрд╕рдореЗрдВ рдХреНрд▓рд╕реНрдЯрд░рд┐рдВрдЧ, рд▓реЙрдХрд┐рдВрдЧ рдореИрдХреЗрдирд┐рдЬреНрдо рдФрд░ рднреА рдмрд╣реБрдд рдХреБрдЫ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдм рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдпрд╣ рдмрд╣реБрдд рджрд┐рд▓рдЪрд╕реНрдк рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рдЫреЛрдбрд╝ рджреЗрдВред
PHPCR
рд▓реЗрдХрд┐рди рд╣рд░ рдХреЛрдИ рдЬрд╛рд╡рд╛ рдореЗрдВ рдирд╣реАрдВ рд▓рд┐рдЦрддрд╛ рд╣реИ! (рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рдЪреБрдЯрдХреБрд▓реЗ рд╕реБрдирд╛рддреЗ рд╣реИрдВ)
рд╣рдорд╛рд░реЗ рдЬреИрд╕реЗ рд▓реЛрдЧреЛрдВ рдХреЗ
рд▓рд┐рдП, PHP рдХреЗ рд▓рд┐рдП рдХрдВрдЯреЗрдВрдЯ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдмрдирд╛рдИ рдЧрдИ рдереА - рдКрдкрд░ рд╡рд░реНрдгрд┐рдд JCR API, PHP рдХреА рд╢реИрд▓реА рдХреЗ рдЕрдиреБрдХреВрд▓ рд╣реИред рдЗрд╕ рддрдереНрдп рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдХрд┐ рдПрдкреАрдЖрдИ рдПрдХ рд╣реА рд╣реИ рдФрд░ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реИ, рдпрд╣ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реИ: рдЖрдк рдПрдХ рдмрд╛рд░ рдЖрд╡реЗрджрди рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдмреИрдХрдПрдВрдбреНрд╕ рдХреЛ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ (рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рд░реВрдк рд╕реЗ, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ)ред
рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдкреНрд▓рд╕ - рд╣рдо рдПрдХ рд╕рд╛рдЗрдХрд┐рд▓ рдХрд╛ рдЖрд╡рд┐рд╖реНрдХрд╛рд░ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ (рдХреНрдпреЛрдВрдХрд┐, рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рдпрд╛рдж рдХрд░рддреЗ рд╣реИрдВ, рд╕реАрдПрдордПрд╕ рдореЗрдВ рдбреЗрдЯрд╛ рд╕реНрдЯреЛрд░реЗрдЬ рдХреА рд╕рдорд╕реНрдпрд╛ рдкрд╣рд▓реЗ рд╣реА рд╣рд▓ рд╣реЛ рдЧрдИ рд╣реИ)ред
рдмреЗрд╢рдХ, рдЗрд╕ рддрд░рд╣ рдХреА рдкрд╣рд▓ рдкрд░ рдзреНрдпрд╛рди рдирд╣реАрдВ рджрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ - рдбреЗрд╡рд┐рдб
рдиреЗ рдЬреЗрд╕реАрдЖрд░ 2.1 рдореЗрдВ PHPCR рдХреЛ рдЕрдкрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП
рдЕрдиреБрд░реЛрдз рднреЗрдЬрд╛ ред рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ред
рдЪреВрдБрдХрд┐ рдЖрдк рдЬрд╛рд╡рд╛ рд╕реЗ PHP рдореЗрдВ рд╕рд┐рд░реНрдл API рдирд╣реАрдВ рд▓реЗ рд╕рдХрддреЗ рдФрд░ рдкреЛрд░реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЕрднреА рднреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рд╣реИрдВред рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рдпрд╣ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рд╣реИ рдХрд┐ PHP рдХрдордЬреЛрд░ рд░реВрдк рд╕реЗ рдЯрд╛рдЗрдк рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рд╡рд┐рдзрд┐ рдЕрдзрд┐рднрд╛рд░ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдХреБрдЫ рдЗрдВрдЯрд░рдлреЗрд╕ рдФрд░ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдХреЗрд╡рд▓ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдмрд╛рд╣рд░ рдлреЗрдВрдХ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рдЬрд╣рд╛рдВ рдПрдХ рдЕрдзрд┐рднрд╛рд░ рдерд╛, рд╡рд┐рдзрд┐рдпреЛрдВ рдиреЗ рдмрд╕ рд╡реИрдХрд▓реНрдкрд┐рдХ рддрд░реНрдХ рдЬреЛрдбрд╝реЗред рдорддрднреЗрджреЛрдВ рдХреЛ
рдпрд╣рд╛рдВ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛
рд╣реИ , рд▓реЗрдХрд┐рди рд╡рд╣рд╛рдВ рдХреБрдЫ рднреА рднрдпрд╛рдирдХ рдирд╣реАрдВ рд╣реИред
рд╡рд░реНрддрдорд╛рди рдореЗрдВ, PHPCR рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ:
- рдкреЗрдбрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ
- рдпреВрдпреВрдЖрдИрдбреА рджреНрд╡рд╛рд░рд╛ рдиреЛрдбреНрд╕ рддрдХ рдкрд╣реБрдВрдЪ
- рдиреЛрдбреНрд╕ рджреНрд╡рд╛рд░рд╛ рдЦреЛрдЬ
- рд╡рд░реНрдЬрд╝рдирд┐рдВрдЧ
- рдЕрд╡рд╕рд░реЛрдВ рдХреА рдкрд╣рдЪрд╛рди
- XML рдореЗрдВ рдЖрдпрд╛рдд рдФрд░ рдирд┐рд░реНрдпрд╛рдд рдХрд░реЗрдВ
- рдЕрд╡рд░реБрджреНрдз
- рд▓реЗрдирджреЗрди *
- рдЕрдиреБрдорддрд┐
- рдЕрднрд┐рдЧрдо рдирд┐рдпрдВрддреНрд░рдг *
- рдЯреНрд░реИрдХрд┐рдВрдЧ рдмрджрд▓реЗрдВ
(*) - рдЕрднреА рддрдХ рдЬреИрдХрд▓реЛрдк-рдЬреИрдХрдмрдмрд┐рдЯ рдореЗрдВ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (рдЙрд╕ рдкрд░ рдЕрдзрд┐рдХ), рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЬрд╛рдирдХрд╛рд░реА рдереЛрдбрд╝реА рдкреБрд░рд╛рдиреА рд╣реЛ рд╕рдХрддреА рд╣реИред
рдореБрдЦреНрдп PHPCR рдЕрд╡рдзрд╛рд░рдгрд╛рдПрдБ :
- рд╕рднреА рд╕рд╛рдордЧреНрд░реА рдиреЛрдб рдЯреНрд░реА рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХреА рдЬрд╛рддреА рд╣реИ
- рдиреЛрдбреНрд╕ рдХрд╛ рдПрдХ рдирд╛рдо рдФрд░ рдкреНрд░рдХрд╛рд░ рд╣реЛрддрд╛ рд╣реИ
- рдиреЛрдбреНрд╕ рдореЗрдВ рдмреЗрдЯреА рдиреЛрдбреНрд╕ рдФрд░ рдЧреБрдг рд╣реИрдВ рдЬреЛ рдореВрд▓реНрдпреЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВ
- рдкреНрд░реЙрдкрд░реНрдЯреА рд╡реИрд▓реНрдпреВ рдирдВрдмрд░, рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕, рдмрд╛рдЗрдирд░реА рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдФрд░ рдЕрдиреНрдп рдиреЛрдбреНрд╕ рдХреЗ рд▓рд┐рдВрдХ рд╕реНрдЯреЛрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдХрд╣реАрдВ рд╣рдордиреЗ рдЗрд╕реЗ рд╕реБрдирд╛ рддреЛ рдирд╣реАрдВ?
рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдРрд╕рд╛ рднрдВрдбрд╛рд░ рдХреИрд╕реЗ рджрд┐рдЦ рд╕рдХрддрд╛ рд╣реИ (рдпреЛрдЬрдирд╛рдмрджреНрдз рд░реВрдк рд╕реЗ, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ):
<root> <cms> <pages> <home title="Hello"> <block title="News" content="Today: PHPCR presentation"></block> </home> <contact title="Contact" content="phpcr-users@groups.google.com"></contact> </pages> </cms> </root>
рдЕрдм рддрдХ рдЕрд▓реМрдХрд┐рдХ рдХреБрдЫ рднреА рдирд╣реАрдВред
рдЖрдЗрдП рдереЛрдбрд╝рд╛ рдФрд░ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ рдХрд┐ рдХреНрдпрд╛ рдХрд╛рдо рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред
рд╕рдореБрджреНрд░реА рдореАрд▓
- рдиреЛрдб рдПрдХ рдирд╛рдорд┐рдд рдХрдВрдЯреЗрдирд░ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╣рдореЗрд╢рд╛ рдорд╛рддрд╛-рдкрд┐рддрд╛ рд╣реЛрддреЗ рд╣реИрдВ
- XML рддрддреНрд╡реЛрдВ рдХреА рдпрд╛рдж рджрд┐рд▓рд╛рддрд╛ рд╣реИ
- рдиреЛрдбреНрд╕ рдмрдирд╛рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рд╣рдЯрд╛рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдХреЙрдкреА рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ
- рдиреЛрдб рдкрде рдореЗрдВ рдореВрд▓ рдиреЛрдб рдХрд╛ рдорд╛рд░реНрдЧ рдФрд░ рд╡рд░реНрддрдорд╛рди рдиреЛрдб рдХрд╛ рдирд╛рдо рд╣реЛрддрд╛ рд╣реИ:
- рдкрде: / рд╕реЗрдореА / рдкреЗрдЬ / рд╣реЛрдо
- рдЬрдирдХ рдкрде: / рд╕реЗрдореА / рдкреГрд╖реНрда
- рд╣реЛрд╕реНрдЯ рдирд╛рдо: рдШрд░
рдиреЛрдб рдЧреБрдг
- рдиреЛрдбреНрд╕ рдиреЗ рдРрд╕реЗ рдЧреБрдгреЛрдВ рдХрд╛ рдирд╛рдо рджрд┐рдпрд╛ рд╣реИ рдЬреЛ рдореВрд▓реНрдпреЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВ
- XML рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреА рдпрд╛рдж рджрд┐рд▓рд╛рддрд╛ рд╣реИ
- рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░: STRING, URI, BOOLEAN, LONG, DOUBLE, DECIMAL, BINARY, DATE, NAME, PATH, WEAKREFERENCE, рд╕рдВрджрд░реНрдн
- рд╕рдВрджрд░реНрдн рдкреНрд░рдХрд╛рд░ (WEAK) рдЕрдиреНрдп рдиреЛрдбреНрд╕ рдХреЗ рд▓рд┐рдП рд▓рд┐рдВрдХ рдмрдирд╛рддреЗ рд╣реИрдВ
- рдиреЛрдбреНрд╕ рдФрд░ рдЧреБрдгреЛрдВ рдХреЗ рдирд╛рдо рд╕реНрдерд╛рди рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ:
jcr:created
, jcr:mimeType
, phpcr:class
рдореБрдЦреНрдп рдкреНрд░рдХрд╛рд░ рдХреЗ рдиреЛрдбреНрд╕
- рдЙрди рдирд╛рдореЛрдВ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рд╣реИ, рд╕рд╛рде рд╣реА рд╕рд╛рде рдЧреБрдгреЛрдВ рдФрд░ рдмрд╛рд▓ рдиреЛрдбреНрд╕ рдХреЗ рдкреНрд░рдХрд╛рд░ рднреА
- рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб рдореЗрдВ рдПрдХ рдореВрд▓ рдкреНрд░рдХрд╛рд░ рд╕реЗрдЯ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП
nt:unstructured
рдЙрдкрдпреЛрдЧ рд╕реНрдЯреЛрд░реЗрдЬ-рдХреБрдЫ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
- рдЕрдиреНрдп рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ nt: рдкрддрд╛, nt: рдлрд╝реЛрд▓реНрдбрд░, nt: рдлрд╝рд╛рдЗрд▓ рдФрд░ рдЕрдиреНрдп рд╢рд╛рдорд┐рд▓ рд╣реИрдВ
- рдЕрдкрдиреА рдЦреБрдж рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдирдП рдкреНрд░рдХрд╛рд░ рдХреЗ рдиреЛрдбреНрд╕ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдорд┐рдХреНрд╕рд┐рди рдиреЛрдб рдкреНрд░рдХрд╛рд░
- рдмреБрдирд┐рдпрд╛рджреА рдкреНрд░рдХрд╛рд░реЛрдВ рдореЗрдВ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ рд╡рдВрд╢рд╛рдиреБрдХреНрд░рдо рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ
- рд▓реЗрдХрд┐рди рдорд┐рдХреНрд╕рд┐рди рдкреНрд░рдХрд╛рд░ рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ рд╡рд┐рд╢реЗрд╖рддрд╛ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ- рдЬреИрд╕реЗ рдиреЛрдбреНрд╕ рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛
- рдорд┐рдХреНрд╕рд┐рди рдкреНрд░рдХрд╛рд░ рдХреЛ рдЕрдкрдиреЗ рдЬреАрд╡рдирдХрд╛рд▓ рдХреЗ рджреМрд░рд╛рди рдПрдХ рдиреЛрдб рдХреЛ рд╕реМрдВрдкрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
рдЙрджрд╛рд╣рд░рдг: рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ
jcr:uuid
рдкреНрд░реЙрдкрд░реНрдЯреА рд╣реИ рдЬреЛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд╣рдЪрд╛рдирдХрд░реНрддрд╛ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреА рд╣реИред Uuid рдХреЛ рдЬрд╛рдирдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рдПрдХ
mix:referenceable
рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ
mix:versionable
, рдФрд░ рдЙрд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░
mix:versionable
(рд▓реЗрдХрд┐рди рддрдм рд╣рдореЗрдВ рдЕрднреА рднреА рдЧреБрдг
jcr:versionHistory
,
jcr:predecessors
,
jcr:baseVersion
,
jcr:isCheckedOut
,
jcr:mergeFailed
, рдЖрджрд┐ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред )
рдХрд╛рд░реНрдпрд╕реНрдерд╛рдиреЛрдВ
- рдХрдИ рдХрд╛рд░реНрдпрдХреНрд╖реЗрддреНрд░ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХрд╛ рдЕрдкрдирд╛ рдкреЗрдбрд╝ рд╣реИ
- рдЬреАрдЖрдИрдЯреА / рдПрд╕рд╡реАрдПрди рдореЗрдВ рдПрдХ рдпреВрдирд┐рдХреНрд╕ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдФрд░ рд╢рд╛рдЦрд╛рдУрдВ рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ, рдкреНрд░рддреНрдпреЗрдХ рдХреЛ рдХреНрд▓реЛрди рдФрд░ рд╡рд┐рд▓рдп рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
- рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
рдФрд░ рдЕрдм рдЗрд╕ рд╕рдм рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдг:
рд╕рддреНрд░ рдирд┐рд░реНрдорд╛рдг
use PHPCR\SimpleCredentials;
CRUD рдСрдкрд░реЗрд╢рди
$root = $session->getRootNode();
рдкреЗрдбрд╝ рдХреА рдЯрд╣рдиреА
$node = $session->getNode('/site/content'); foreach ($node->getNodes() as $child) { var_dump($child->getName()); }
рд╡рд░реНрдЬрд╝рдирд┐рдВрдЧ
рдЦреЛрдЬ
$qm = $workspace->getQueryManager();
рдЗрд╕ рдкреНрд░рд╕реНрддреБрддрд┐ рдореЗрдВ рдЕрдиреНрдп рдХреЛрдб рдЙрджрд╛рд╣рд░рдг рдорд┐рд▓ рд╕рдХрддреЗ рд╣реИрдВред
рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЕрд▓рдЧ-рдЕрд▓рдЧ рдмреИрдХреЗрдВрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрд╛ рдЧрдпрд╛ рдЖрдХрд░реНрд╖рдХред
рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХрдИ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдирд╣реАрдВ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡реЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рджрд┐рд▓рдЪрд╕реНрдк рд╣реИрдВ:
- рдорд┐рдбрдЧрд╛рд░реНрдб 2 PHPCR
- Jackalope
- рдЬреИрдХрдмрдмрд┐рдЯ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ
- рд╕рд┐рджреНрдзрд╛рдВрдд DBAL рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ (рд╕рдВрдмрдВрдзрдкрд░рдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдбреЗрдЯрд╛ рднрдВрдбрд╛рд░рдг)
- MongoDB рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ (рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд╣реАрдВ)
рдорд┐рдбрдЧрд╛рд░реНрдб 2 PHPCR
Midgard2 C, Python рдФрд░
PHP рдХреЗ рд▓рд┐рдП
рдмрд╛рдЗрдВрдбрд░реНрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рдУрдкрди рд╕реЛрд░реНрд╕ рдХрдВрдЯреЗрдВрдЯ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╣реИред
JCR рд╕реЗ рдереЛрдбрд╝реА
рдЕрд▓рдЧ рд╢рдмреНрджрд╛рд╡рд▓реА , Midgard2
php5-midgard2 рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ Midgard2 PHPCR рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рд╛рдордЧреНрд░реА рддрдХ рдкрд╣реБрдБрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рд╕реБрд╡рд┐рдзрд╛рдПрдБ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред Libgda GNOME рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдирд┐рд░реНрдорд┐рдд, Midgard2 рд╕рдВрдмрдВрдзрдкрд░рдХ рдбреЗрдЯрд╛рдмреЗрд╕
рдХреА рдПрдХ рдкреНрд░рднрд╛рд╡рд╢рд╛рд▓реА рд╕реВрдЪреА рд░рдЦрддрд╛ рд╣реИ, рдЬрд╣рд╛рдБ рдЖрдк рдЕрдкрдиреЗ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреА рдореЗрдЬрдмрд╛рдиреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдореИрдВ рдорд░рд╣рдо рдореЗрдВ рдордХреНрдЦреА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рддреБрд░рдВрдд рдХрд╣реВрдБрдЧрд╛ - PHP рд╡рд┐рд╕реНрддрд╛рд░ рдХрд╛рдлреА рдХрдо рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ OS рдХреЗ рд▓рд┐рдП рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ:
- рдбреЗрдмрд┐рдпрди 7 рд╡реНрд╣реАрдЬреА рдХреЗ рддрд╣рдд, рдкреИрдХреЗрдЬ рдЕрднреА рднреА рдЕрд╕реНрдерд┐рд░ рд╢рд╛рдЦрд╛рдУрдВ рдореЗрдВ рд╣реИ (рдФрд░ рд╡рд╛рдВрдЫрдиреАрдп рд░реВрдк рд╕реЗ - рдЪреБрдкрдЪрд╛рдк PHP-FPM рдХреЛ рд╕реЗрдЧрдлреЙрд▓реНрдЯ рдореЗрдВ рдЧрд┐рд░рд╛ рджреЗрддрд╛ рд╣реИ)ред
- CentOS рдХреЗ рд▓рд┐рдП, рдкреИрдХреЗрдЬ рд╕рднреА рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдХреЗ рд▓рд┐рдП рдпрд╛ рддреЛ рдкреБрд░рд╛рдиреЗ рд╣реИрдВ рдпрд╛ рдирд╣реАрдВ (рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╣рд╛рдВ рд╣реИ, рдпрд╣ рдмрд╣реБрдд рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рд╣рд╛рдереЛрдВ рддрдХ рдирд╣реАрдВ рдкрд╣реБрдВрдЪрд╛ рд╣реИ)
- рд╡рд┐рдВрдбреЛрдЬрд╝ рдкрд░ рдирд┐рд░реНрдорд┐рдд рдкреНрд░рдХреГрддрд┐ рдореЗрдВ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ (рд╢рд╛рдпрдж "gnomes" рд╕реНрд╡рдпрдВ рдорд┐рдбрдЧрд╛рд░реНрдб 2 рдХреА рдЬрдбрд╝реЗрдВ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЪрд╛рд░ рд╕рд╛рд▓ рдкрд╣рд▓реЗ рднрдВрдбрд╛рд░ рдореЗрдВ рдлрд╛рдЗрд▓реЗрдВ рдЕрднреА рднреА PHP4 рдХреЗ рд▓рд┐рдП рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИрдВ)
- рдореЗрд░реА рдХрдореА рдХреЗ рдХрд╛рд░рдг рдореИрдХ рдУрдПрд╕ рдХреЗ рддрд╣рдд рдкрд░реАрдХреНрд╖рдг рдХрд░рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рдерд╛ (рд▓реЗрдХрд┐рди рд╕рд╛рдЗрдЯ рджреНрд╡рд╛рд░рд╛ рджреЗрдЦрддреЗ рд╣реБрдП, рд╕рдм рдХреБрдЫ рдХрд╛рдврд╝рд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╣реЛрддрд╛ рд╣реИ)ред
рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд╕рдм рдХреБрдЫ рдЙрдмрдВрдЯреВ рд╕рд░реНрд╡рд░ 12.04 рдкрд░ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдкреИрдХреЗрдЬ рд╡рд╣рд╛рдВ рдирдП рд╣реИрдВ, рдФрд░ рдХреБрдЫ рднреА рдирд╣реАрдВ рдХреНрд░реИрд╢ред
рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЖрдИрдЖрд░рд╕реА рдореЗрдВ рд╕рд┐рдореНрдлрдиреА рд╕реАрдПрдордПрдл рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд╕рд╛рде рдмрд╛рдд рдХрд░рдиреЗ рд╕реЗ, рдореЗрд░реЗ рд▓рд┐рдП рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЧрдпрд╛ рдХрд┐ рдпрд╣ рдмреИрдХреЗрдВрдб рдкреНрд░рджрд╛рддрд╛ рдХрдИ рдорд╣реАрдиреЛрдВ рд╕реЗ рдЯреВрдЯ рдЧрдпрд╛ рд╣реИ, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдкрд░реАрдХреНрд╖рдг рднреА рдЗрд╕рдХреЗ рд▓рд┐рдП рдЕрдХреНрд╖рдо рдХрд░ рджрд┐рдП рдЧрдП рд╣реИрдВред рдЗрд╕рдХрд╛ рдХрд╛рд░рдг рдорд┐рдбрдЧрд╛рд░реНрдб 2 рдЯреАрдо рдХреЗ рдкрдХреНрд╖ рдореЗрдВ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐
рдмрд░реНрдЧреА рдиреЗ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХрд╛ рд╡рд╛рджрд╛ рдХрд┐рдпрд╛ рдерд╛ред
рдореИрдВ рдорд┐рдбрдЧрд╛рд░реНрдб 2 PHPCR рдХреЛ рд╕рд┐рдореНрдлрдиреА CMF рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдорд┐рд▓рд╛ред рд╢рд╛рдпрдж рдХреЛрдИ рдФрд░ рд╕рдлрд▓ рд╣реЛрдЧрд╛ред рдЕрднреА рдирд╣реАрдВ, рддреЛ рдмрд╛рдж рдореЗрдВред
Jackalope
рдирд╛рдо (
рдЬреИрдХрдмрдмрд┐рдЯ ,
рдЬреИрдХрд▓реЛрдк ) рдореЗрдВ рдЦрд░рдЧреЛрд╢ рд╡рд┐рд╖рдп рдХреЛ рд╣рд░рд╛рддреЗ рд╣реБрдП,
рдЬреИрдХрд▓реЛрдк рддреАрди рдкреНрд░рдХрд╛рд░ рдХреЗ рдбреЗрдЯрд╛ рдЧреЛрджрд╛рдореЛрдВ рддрдХ рдкрд╣реБрдВрдЪ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ:
- рдпрд╣ рд╣рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЕрдкрд╛рдЪреЗ рдЬреИрдХрдмрдмрд┐рдЯ рдХреЗ рд▓рд┐рдП рдЬрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ
- рдбреЙрдХреНрдЯреНрд░рд┐рди рдбреЗрдЯрд╛рдмреЗрд╕ рдПрдмреНрд╕реНрдЯреНрд░рдХреНрд╢рди рд▓реЗрдпрд░, рдЬреЛ рдЖрдкрдХреЛ рд╕рдорд░реНрдерд┐рдд рдбреАрдмреАрдПрдПрд▓ рдЗрдВрдЬрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрд╣ рд╕рд┐рджреНрдзрд╛рдВрдд рдореЗрдВ рд╣реИ, рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ, рдХреЗрд╡рд▓ MySQL, PostreSQL рдФрд░ SQLite рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (рдХреНрдпрд╛ рдХреЛрдИ рдХрд┐рд╕реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдЖрджрд┐)?
- MongoD (рджреЛ рд╡рд░реНрд╖реЛрдВ рдХреЗ рд▓рд┐рдП рдЕрджреНрдпрддрди рдирд╣реАрдВ, рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЯреВрдЯрд╛ рд╣реБрдЖ рдпрд╛ рдЕрдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реЛ)
рдЬреИрдХрд▓реЛрдк (рдФрд░ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЬреИрдХрд▓реЛрдк-рдЬреИрдХрдмреЗрдЯ рдореЗрдВ) рдХрд╛рдлреА рд╕реНрдерд┐рд░ рд╣реИ рдФрд░ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рд╕рдмрд╕реЗ рдкреВрд░реНрдг PHPCR рдПрдкреАрдЖрдИ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд╢рдВрд╕рд┐рдд рд╣реИред рд╣рдо рдЙрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдВрдЧреЗред рд╣рд╛рд▓рд╛рдВрдХрд┐, phpcr-api- рдкрд░реАрдХреНрд╖рдг, рдЬреЛ PHPCR API рдХреА рдЙрдкрд▓рдмреНрдзрддрд╛ рдФрд░ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддреЗ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рднреА рдЬреИрдХрд▓реЛрдк-рдбрдХреНрдЯрд╛рдЗрди-рдбрдмрд▓ рдХреЗ рд▓рд┐рдП рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдпрд╣ рд╕рдордп рдХреЗ рд╕рд╛рде рдЗрд╕реЗ рдкрдХрдбрд╝ рд╕рдХрддрд╛ рд╣реИред
PHPCR рд╕рд╛рд░рд╛рдВрд╢
рдЗрд╕рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЬреЗрд╕реАрдЖрд░ рдПрдкреАрдЖрдИ рдорд╛рдирдХ рдХрд╛ рдЕрдиреБрдкрд╛рд▓рди рдХрд░рдиреЗ рд╡рд╛рд▓реА рд╕рд╛рдордЧреНрд░реА рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП (PHP рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рд┐рдд) рдПрдкреАрдЖрдИ рд╣реИред рдЗрд╕ рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП, рдХрдИ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдП рдЧрдП рд╣реИрдВ рдЬреЛ рдбреЗрдЯрд╛ рд╡реЗрдпрд░рд╣рд╛рдЙрд╕ рд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛрдб рдХреЛ рд╕рд╛рд░ рдХрд░рддреЗ рд╣реИрдВред
рдЕрдм рддрдХ, рджреЛ рдореБрдЦреНрдп рдкреНрд░рд╢реНрди рдЙрдардиреЗ рдЪрд╛рд╣рд┐рдП, рдФрд░ рджреЛрдиреЛрдВ рдХрд╛ рдЙрддреНрддрд░ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛:
PHPCR рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрдм рдХрд░реЗрдВ?- рдЬрдм рдкрджрд╛рдиреБрдХреНрд░рдорд┐рдд рдиреЗрд╡рд┐рдЧреЗрд╢рди рд╕рдВрд░рдЪрдирд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рд╣реИ
- рдЬрдм рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рджреВрд╕рд░реЗ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдбреЗрдЯрд╛ рд╣реЛрдЧрд╛
- рдЬрдм рдбреЗрдЯрд╛ рд╕рдВрд╕реНрдХрд░рдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ
PHPCR рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрдм рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП?рдХрдбрд╝рд╛рдИ рд╕реЗ рд╕рдВрд░рдЪрд┐рдд рд╕рд╛рдордЧреНрд░реА рдФрд░ рд╕рдордЧреНрд░ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП, рд░рд┐рд▓реЗрд╢рдирд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХреА рдЬрд╛рддреА рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдСрдирд▓рд╛рдЗрди рд╕реНрдЯреЛрд░ рдореЗрдВ, рдЙрддреНрдкрд╛рдж рд╡рд┐рд╡рд░рдг PHPCR рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЖрджреЗрд╢ RDBMS рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред
PHPCR ODM
рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдкреАрдЖрдИ рд░реЛрдЬрдорд░реНрд░рд╛ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рд░ рдФрд░ рдЕрд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ (рдЖрдЦрд┐рд░рдХрд╛рд░, рдЕрдзрд┐рдХрд╛рдВрд╢ рдХрд┐рд╕реА рди рдХрд┐рд╕реА рддрд░рд╣ рдХреЗ рдУрдЖрд░рдПрд╕ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ)ред рдФрд░ рдпрд╣рд╛рдВ
PHPCR ODM рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЖрддрд╛ рд╣реИ, рдЬреЛ PHPCR рдФрд░ рдСрдмреНрдЬреЗрдХреНрдЯ рдбреЙрдХреНрдпреВрдореЗрдВрдЯ рдореИрдкрд░ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рд╣реИред
рдбреЙрдХреНрдЯреНрд░рд┐рди рдУрдЖрд░рдПрдо , рдПрд╕рдПрдл 2 (рдФрд░ рд╕рд┐рд░реНрдл рдПрд╕рдПрдл 2) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реИ, рдЖрд░рдбреАрдПрдордмреАрдПрд╕ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдбреЗрдЯрд╛ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП
рдбреЗрдЯрд╛ рдореИрдкрд░ рдкреИрдЯрд░реНрди рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред
ODM, Doctrine ORM рдХреА рддрд░рд╣, рдбреЗрдЯрд╛ рдореИрдкрд░ рдХреЛ рдбреЗрдЯрд╛ рд╕реНрдЯреЛрд░реЗрдЬ рд▓реЗрдпрд░ рд╕реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдбреЗрдЯрд╛ рдореИрдкрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рд╕рд╛рдордЧреНрд░реА рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╣реИред рд▓реЗрдЦрдХ рдИрдорд╛рдирджрд╛рд░реА рд╕реЗ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ ODM
рд╣рд╛рдЗрдмрд░рдиреЗрдЯ рдХреЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рд╕реЗ рдкреНрд░реЗрд░рд┐рдд рд╣реИред
ODM, рд╡рд╕реНрддреБрдУрдВ рдХреЛ PHPCR рдиреЛрдбреНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИ, рдЙрдиреНрд╣реЗрдВ рджрд╕реНрддрд╛рд╡реЗрдЬ рдХрд╣рддрд╛ рд╣реИред рдЙрд╕реА рд╕рдордп, рдЪреВрдВрдХрд┐ PHPCR рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рдПрдХ рдирдпрд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рдЕрдореВрд░реНрдд рдкрд░рдд (DBAL) рд▓рд┐рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред
PHPCR ODM рд╢рдмреНрджрд╛рд╡рд▓реА рджрд╕реНрддрд╛рд╡реЗрдЬ рдХреНрдпрд╛ рд╣реИ?
рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдПрдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд PHP рд╡рд░реНрдЧ рд╣реИ рдЬреЛ рдХрд┐рд╕реА рднреА рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЛ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ (рдпрд╛ рдмрд▓реНрдХрд┐, рдЖрдк рдЗрд╕реЗ рд╣рдореЗрд╢рд╛ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ) рдФрд░ рдХреБрдЫ рдмреБрдирд┐рдпрд╛рджреА рдЕрдореВрд░реНрдд рд╡рд░реНрдЧреЛрдВ рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдирд╣реАрдВ рдорд┐рд▓рд╛ рд╣реИред рдРрд╕реА рдЗрдХрд╛рдИ рдореЗрдВ
final
рдХреАрд╡рд░реНрдб рдХреЗ рд╕рд╛рде рддрд░реАрдХреЗ рдирд╣реАрдВ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдП,
clone()
рдФрд░
wakeup()
рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░реЗрдВ, рдпрд╛ рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░реЗрдВ, рд▓реЗрдХрд┐рди рдЗрд╕реЗ
рдмрд╣реБрдд рд╕рд╛рд╡рдзрд╛рдиреА рд╕реЗ рдХрд░реЗрдВ ред рдПрдХ рдЗрдХрд╛рдИ рдореЗрдВ рд╣реА рдРрд╕реЗ рдЧреБрдг рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ рднрдВрдбрд╛рд░рдг рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдмрджреНрдз рд╣реЛрддреЗ рд╣реИрдВред рдЪреВрдВрдХрд┐ ODM
рдбреЙрдХреНрдЯреНрд░рд┐рди рдХреЙрдорди рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдЪрд▓рддрд╛ рд╣реИ, рдЬреЛ рдмреБрдирд┐рдпрд╛рджреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ (рдПрдиреЛрдЯреЗрд╢рди, рдХреИрд╢рд┐рдВрдЧ, рдФрд░ рдСрдЯреЛрд▓реЙрдб рдСрдл рдХреНрд▓рд╛рд╕) рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ, рдбреЗрдЯрд╛ рд╡реЗрдпрд░рд╣рд╛рдЙрд╕ рдореЗрдВ рдХреНрд▓рд╛рд╕ рдХреЗ рдЧреБрдгреЛрдВ рдХреЗ рдЧреБрдгреЛрдВ рдХреА рдореИрдкрд┐рдВрдЧ рдПрдХ рдкрд░рд┐рдЪрд┐рдд рддрд░реАрдХреЗ рд╕реЗ рдХреА рдЬрд╛рддреА рд╣реИ - PHP рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдпрд╛ YAML / XML рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рдПрдиреЛрдЯреЗрд╢рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗред рдкреНрд░рддреНрдпреЗрдХ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рдПрдХ рд╢реАрд░реНрд╖рдХ рдФрд░ рд╢реАрд░реНрд╖рдХ рд╣реИред рд╕рднреА рджрд╕реНрддрд╛рд╡реЗрдЬ рдПрдХ рдкреЗрдбрд╝ рдореЗрдВ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рдЕрдиреНрдп рджрд╕реНрддрд╛рд╡реЗрдЬреЛрдВ рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдирдореВрдирд╛ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВ:
namespace Demo; use Doctrine\ODM\PHPCR\Mapping\Annotations as PHPCRODM; class MyDocument { private $id; private $parent; private $name; private $children; private $title; private $content;
рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдПрдиреЛрдЯреЗрд╢рди, рд╕рд╛рдорд╛рдиреНрдп рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░реЛрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕реНрдЯреНрд░рд┐рдВрдЧ) рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдмрдЪреНрдЪреЗ рдпрд╛ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреЗ рджрд╕реНрддрд╛рд╡реЗрдЬреЛрдВ рдХреЗ рд▓рд┐рдВрдХ рднреА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдбреЗрдЯрд╛ рдореИрдкрд░ рдкреИрдЯрд░реНрди рд╕реЗ рдЕрдкрд░рд┐рдЪрд┐рдд рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП, рдРрд╕рд╛ рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдРрд╕реА рдХрдХреНрд╖рд╛рдПрдВ
рд╕рдХреНрд░рд┐рдп рд░рд┐рдХреЙрд░реНрдб (рд╣рд╛рдп, рд░реЗрд▓ рдФрд░ рд╡рд╛рдИрдЖрдИ-рд╢рдиреАрдХреА) рдХреЗ рд╕рдорд╛рди рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡реЗ рд╡реИрд╕реЗ рднреА рд╕рдорд╛рди рдирд╣реАрдВ рд╣реИрдВред
рдРрд╕реЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдХрд╛рдо рдХрд░реЗрдВ?
require_once '../bootstrap.php';
require_once '../bootstrap.php'; $doc = $documentManager->find(null, "/doc"); echo 'Found '.$doc->getId() ."\n"; echo 'Title: '.$doc->getTitle()."\n"; echo 'Content: '.$doc->getContent()."\n"; foreach($doc->getChildren() as $child) { if ($child instanceof \Demo\Document) { echo 'Has child '.$child->getId() . "\n"; } else { echo 'Unexpected child '.get_class($child)."\n"; } }
рдПрдХ рдЫреЛрдЯрд╛ рдиреЛрдЯ - ORM рдореЗрдВ, рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЖрдо рд╣реИред ODM рдореЗрдВ, рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдкрджрд╛рдиреБрдХреНрд░рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдпрджрд┐ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдЖрдк
рдЕрдиреБрд░реЛрдз рдХрд░ рд╕рдХрддреЗ
рд╣реИрдВ ред
PHPCR ODM рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рджреЛ рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ - рд╕рдВрд╕реНрдХрд░рдг рдФрд░ рдмрд╣реБрднрд╛рд╖рд╛рд╡рд╛рджред рдкрд╣рд▓реЗ рд╡рд╛рд▓реЗ рд╕реЗ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред
PHPCR рдореЗрдВ рджреЛ рддрд░рд╣ рдХреЗ рд╡рд░реНрдЬрдирд┐рдВрдЧ рд╣реЛрддреЗ рд╣реИрдВ- рд╕рд┐рдВрдкрд▓ рд╡рд░реНрдЬрдиреЗрдмрд▓ рдФрд░ рд╡рд░реНрдЯреЗрдмрд▓ред рд╕рд░рд▓ рд╡рд░реНрдЬрдирд┐рдВрдЧ, рдЪреЗрдХрдЗрди / рдЪреЗрдХрдЖрдЙрдЯ рд╡рд┐рдзрд┐рдпреЛрдВ рдФрд░ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХрд╛ рдПрдХ рд░реИрдЦрд┐рдХ рдЗрддрд┐рд╣рд╛рд╕ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЪреЗрдХрд┐рди рдиреЛрдб рдХрд╛ рдПрдХ рдирдпрд╛ рд╕рдВрд╕реНрдХрд░рдг рдмрдирд╛рддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдХреЗрд╡рд▓ рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛рддрд╛ рд╣реИ, рдХреБрдЫ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдПрдХ рдЪреЗрдХрдЖрдЙрдЯ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд рдкреВрд░реНрдг рд╕рдВрд╕реНрдХрд░рдг рдПрдХ рдЧреИрд░-рд░реЗрдЦреАрдп рд╕рдВрд╕реНрдХрд░рдг рдЗрддрд┐рд╣рд╛рд╕ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ (рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП PHPCR-ODM рдореЗрдВ рдЕрднреА рддрдХ рд╕рд╣рд╛рдпрдХ рддрд░реАрдХреЗ рдирд╣реАрдВ рд╣реИрдВ) рдФрд░ рд▓реЗрдмрд▓ (рдЬреЛ рдХрд┐ рдЬреИрдХрд▓реЛрдк рдЬреИрд╕реЗ рд╣реА рдЙрдиреНрд╣реЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдИ рдЧрдИ рд╣реИ) рдЙрдирдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрддреЗ рд╣реИрдВред рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб рдХреЗ рд▓рд┐рдП, рдЖрдк рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдПрдХ рд▓реЗрдмрд▓ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб рдХреЗ рдкреВрд░реЗ рдЗрддрд┐рд╣рд╛рд╕ рдХреЗ рд▓рд┐рдП рд▓реЗрдмрд▓ рдХреЛ рджреЛ рдмрд╛рд░ рджреЛрд╣рд░рд╛рдпрд╛ рдирд╣реАрдВ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдпрджрд┐ рдЖрдк рдХрд┐рд╕реА рдЕрдиреНрдп рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рдЗрд╕реЗ рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдг рд╕реЗ рдирд┐рдХрд╛рд▓рдирд╛ рд╣реЛрдЧрд╛)редрдкреВрд░реНрдг рд╕рдВрд╕реНрдХрд░рдг mix:versionable
PHPCR рд╕реЗ рдкреНрд░рдХрд╛рд░ рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ рдФрд░ рд╢рд╛рдЦрд╛ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, PHPCR рд╕рдВрд╕реНрдХрд░рдг рдПрдкреАрдЖрдИ рдкреВрд░реА рддрд░рд╣ рд╕реЗ PHPCR ODM рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ, рдкреВрд░реНрдг рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЕрднреА рднреА PHPCR\VersionManager
рд╕реАрдзреЗ PHPCR рд╕рддреНрд░ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдкрдврд╝реЗрдВ рдпрд╣рд╛рдБ рдФрд░ рдпрд╣рд╛рдБ редрд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдирд╛рдо PHPCR рджреНрд╡рд╛рд░рд╛ рдЙрддреНрдкрдиреНрди рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рджреНрд╡рд╛рд░рд╛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред рдкреНрд░рддрд┐рдмрджреНрдз рд╕рдВрджреЗрд╢ рдХреА рдХреЛрдИ рдЕрд╡рдзрд╛рд░рдгрд╛ рдирд╣реАрдВ рд╣реИ (рдЕрднреА рддрдХ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ)ред рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ, рдХреЛрдИ рднреА рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рдЗрд╕ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреНрд╖реЗрддреНрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реЗрд╢рд╛рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИредрдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдг рд╕рдВрд╢реЛрдзрди рдФрд░ рдмрдЪрдд рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИрдВ (рдПрдХ рдЕрдкрд╡рд╛рдж рд╣реИ рдЬрдм restoreVersion()
рдФрд░ рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП removeVersion()
редрдХреБрдЫ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЗ рд▓рд┐рдП рд╕рдВрд╕реНрдХрд░рдг рд╕рдорд░реНрдерди рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдПрдиреЛрдЯреЗрд╢рди рдореЗрдВ рдЗрд╕реЗ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ: class MyPersistentClass { private $versionName; private $versionCreated; }
рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдХреЛрдИ рдкреНрд░рд▓реЗрдЦрди рдирд╣реАрдВ рд╣реИ, рд▓реЗрдЦрдХ рдЖрдкрдХреЛ рд╕реНрд░реЛрдд рдХреЛрдб рдореЗрдВ Phpdoc рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рд╕реЗ рд╕рдВрдкрд░реНрдХ рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддреЗ рд╣реИрдВред рдЗрд╕рд▓рд┐рдП, рд╣рдо рдРрд╕реЗ рдЙрдЪреНрдЪ рдорд╛рдорд▓реЛрдВ рдкрд░ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдирд╣реАрдВ рдЯрд┐рдХреЗрдВрдЧреЗ, рдЖрдЗрдП рдПрдХ рдЫреЛрдЯрд╛ рдЙрджрд╛рд╣рд░рдг рджреЗрдЦреЗрдВ рдФрд░ рдЖрдЧреЗ рдмрдврд╝реЗрдВред $article = new Article(); $article->id = '/test'; $article->topic = 'Test'; $dm->persist($article); $dm->flush();
рдЕрдм рдмрд╣реБрднрд╛рд╖рд╛рд╡рд╛рдж рдХреЗ рдмрд╛рд░реЗ рдореЗрдВред рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреА рдХрд┐рд╕реА рднреА рд╕рдВрдкрддреНрддрд┐ рдХреЛ рдЕрдиреБрд╡рд╛рдж рдпреЛрдЧреНрдп рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рддрдереНрдп рдХреЗ рдмрд╛рд╡рдЬреВрдж рдХрд┐ рдЕрдиреБрд╡рд╛рдж рдХреЗ рджреМрд░рд╛рди рдкреВрд░реЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ рдХреНрд▓реЛрди рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рдЬрд┐рди рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдЙрдиреНрд╣реЗрдВ рд╡реНрдпрд░реНрде рдореЗрдВ рдХреЙрдкреА рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рд╣рд░ рдмрд╛рд░ рдХрд╛рдо рдХреЗ рд▓рд┐рдП рднрд╛рд╖рд╛ рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ - рдмрд╕ DocumentManager рдХреЛ рдПрдХ рдмрд╛рд░ рдмрддрд╛рдПрдВ рдХрд┐ рд╣рдореЗрдВ рдХрд┐рд╕ рднрд╛рд╖рд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдЗрд╕рдХрд╛ find()
рдЙрдкрдпреЛрдЧ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреА рдХреЙрд▓ рдФрд░ рдирдП рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ: class MyPersistentClass { private $locale; private $publishDate; private $topic; private $image; }
рдФрд░ рдпрд╣рд╛рдБ рдЕрдиреБрд╡рд╛рдж рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рд╣реИ:
рд╡рд░реНрддрдорд╛рди рдореЗрдВ, рдорд╛рддрд╛-рдкрд┐рддрд╛ рдФрд░ рдмрдЪреНрдЪреЗ рдХреЗ рд▓рд┐рдВрдХ рд╕рд╣рд┐рдд рд╕рднреА рд▓рд┐рдВрдХ рдХреЗ рд▓рд┐рдП, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рднрд╛рд╖рд╛ рдореЗрдВ рдЧрд┐рд░рд╛рд╡рдЯ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╕рддреНрд░ рдХреЗ рджреМрд░рд╛рди рдХреЗрд╡рд▓ рдПрдХ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдХреЛ рдЯреНрд░реИрдХ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд▓реЗрдЦрдХ рдЕрднреА рддрдХ рдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИрдВ рдХрд┐ рдмреЗрд╣рддрд░ рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ, рдФрд░ рдЕрдкреВрд░реНрдг рджрд╕реНрддрд╛рд╡реЗрдЬреЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдХрд╛ рд╕рд╡рд╛рд▓ рдЕрднреА рддрдХ рдЦреБрд▓рд╛ рд╣реИ (рдЬрдм рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдлрд╝реАрд▓реНрдб рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИрдВ)ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕рдордп рдмрддрд╛рдПрдЧрд╛ рдХрд┐ рдЗрди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдХреИрд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛редрдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рднрд╡рд┐рд╖реНрдп рдореЗрдВ рд╡реЗ рд▓реЙрдЧрд┐рдВрдЧ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░реЗрдВрдЧреЗ, рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреА рдХреИрд╢рд┐рдВрдЧ рдХрд░реЗрдВрдЧреЗ, рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░реЗрдВрдЧреЗ (рдпрд╣ рдЕрднреА рднреА рдмрд╣реБрдд рджреБрд░реНрд▓рдн рд╣реИ), рд╡реЗ рдбреЙрдХреНрдЯреНрд░рд┐рди рдбреАрдмреАрдПрдПрд▓ рдХреЗ рд╕рд╛рде рд╕рдВрдпреЛрдЬрди рдореЗрдВ рд╕реЛрд▓рд░ / рдЗрд▓рд╛рд╕реНрдЯрд┐рдХрд╕рд░реНрдЪ рд╕рдорд░реНрдерди рдХреЛ рдХрд╕ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдореЛрдВрдЧреЛрдбреАрдмреА рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЕрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЬреИрдХрдмрдмрд┐рдЯ рдХреЗ рдЕрдЧрд▓реЗ рдкреНрд░рдореБрдЦ рд╕рдВрд╕реНрдХрд░рдг (рдХреЛрдбрдирд╛рдо рдУрдХ) рдкрд░ рдирдЬрд╝рд░ рдЧрдбрд╝рд╛рдП рд╣реБрдП рд╣реИрдВ рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╕рдВрдЧрддрддрд╛ рдкрд░реАрдХреНрд╖рдг рднреА рдХрд┐рдП рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдкреНрд░рд╛рдердорд┐рдХ рдХрд╛рд░реНрдп рдЕрднреА рднреА PHPCR рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджреЗрдирд╛ рд╣реИ рдФрд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдЗрд╕рдХрд╛ рд╕рдорд╛рд╡реЗрд╢ рд╣реИредрд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рдХрд╣рдирд╛ред
ODM рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рд╕реНрдЯреИрдХ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:- рдЬреИрдкреЗрд▓реЛрдк рдпрд╛ рдорд┐рдбрдЧрд╛рд░реНрдб 2 рдХреЗ рд░реВрдк рдореЗрдВ рдмреИрдХрдПрдВрдб рдХреЗ рд╕рд╛рде PHP рдХрдВрдЯреЗрдВрдЯ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА (рдбреЗрдЯрд╛ рдЬреИрдХрдмрдмрд┐рдЯ рдпрд╛ рдЖрд░рдбреАрдмреАрдПрдордПрд╕ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рд╣реИ)
- рдмреИрдХрдПрдВрдб рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдбреЙрдХреНрдЯреНрд░рд┐рди-рдХреЙрдорди рдХреЗ рдКрдкрд░ PHPCR-ODM
- рд╕реАрдзреЗ рдЖрд╡реЗрджрди рдХреЛрдбред
рд▓реЗрдЦ рдХреЗ рджреВрд╕рд░реЗ рднрд╛рдЧ рдореЗрдВ рдЬрд╛рд░реА рд╣реИ ред