
рдлреНрд░рд╛рдВрд╕реАрд╕реА рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рдПрдХ рд╕рдореВрд╣ рдХреА рдЕрджреНрднреБрдд рдкрд╣рд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ
рдХрд╣рд╛рдиреА рдХреА рдирд┐рд░рдВрддрд░рддрд╛ рдЬрд┐рд╕реЗ рдбрд╛рдпрдо рд╕реАрдПрдордПрд╕ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред
рдпрд╣ рд▓реЗрдЦ рдЖрдкрдХрд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд░рд╣рд╛ рд╣реИ
- рджреАрдо рдХреИрд╕реЗ рд╡реЗрдмрдорд╛рд╕реНрдЯрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдЬреАрд╡рди рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рдХреЗ рдХреБрдЫ рдЙрджрд╛рд╣рд░рдг
- рдиреБрдХрд╕рд╛рди рдЬреЛ рдЖрдк рд╕рд╛рдордирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдЙрдирдХреЗ рд╕рдВрднрд╛рд╡рд┐рдд рд╕рдорд╛рдзрд╛рди
- рдХреБрдЫ рджрд╛рд░реНрд╢рдирд┐рдХ рдЪрд░реНрдЪрд╛ рдХреИрд╕реЗ рдбрд╛рдпрдо рдореМрд▓рд┐рдХ рд░реВрдк рд╕реЗ (рдмреЗрд╣рддрд░ рдХреЗ рд▓рд┐рдП) рд╕рд╣рдпреЛрдЧрд┐рдпреЛрдВ рд╕реЗ рдЕрд▓рдЧ рд╣реИ
- рд╡рд┐рд╖рдп рд╕реЗ рдЬреБрдбрд╝реЗ рд░реЛрдЪрдХ рддрдереНрдп
- рд╕рд╛рде рд╣реА рд╕реНрдХреНрд░реАрдирд╢реЙрдЯ рдФрд░ рдХреЛрдб рдЙрджрд╛рд╣рд░рдг
рдпрд╣ рд╕реНрд╡реИрдЪреНрдЫрд┐рдХ рдФрд░ рдкрд░реНрдпрд╛рдкреНрдд рдерд╛ред
рдЕрднреНрдпрд╛рд╕
рдкреНрд░рд╕реНрддрд╛рд╡рдирд╛рдкрд┐рдЫрд▓реЗ рджреЛ рдорд╣реАрдиреЛрдВ рдореЗрдВ, рдореИрдВрдиреЗ рдЗрд╕ рд╕реАрдПрдордПрд╕ рдкрд░ 5-рдкреГрд╖реНрда рд╕реЗ 2,000-рдкреГрд╖реНрда рддрдХ 6 рд╕рд╛рдЗрдЯреЗрдВ рд▓рд┐рдЦреАрдВ, рджреЛ рд╕рд╛рдЗрдЯреЗрдВ рд╕рд╛рдЭрд╛ рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рдкрд░, рджреЛ рдПрдХ рд╡реАрдкреАрдПрд╕ рд╕рд░реНрд╡рд░ рдкрд░ рд╕реНрдерд┐рдд рд╣реИрдВред рд╣рд░ рдЬрдЧрд╣ 128 рдПрдордмреА рдореЗрдореЛрд░реАред
рд░рд╛рд▓рдУрд╣, рдпрд╣ рдЕрднреНрдпрд╛рд╕, рдЬрд┐рд╕рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рд╕рдордп рдкрд╛рд░рдВрдкрд░рд┐рдХ рд╕рд╛рдЭрд╛ рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рдкрд░ рдбрд╛рдпрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдареАрдХ рдирд╣реАрдВ рд╣реИ ...
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, 48 рдПрдордмреА рд╕реЗ рдХрдо рдХреА рдореЗрдореЛрд░реА рд╕реАрдорд╛
Fatal error: Allowed memory size of X bytes exhausted
рдХрд╛рд░рдг рдмрди рд╕рдХрддреА рд╣реИ
Fatal error: Allowed memory size of X bytes exhausted
, рд▓рдЧрднрдЧ 8 рдПрдордмреА рдкреЗрдЬ рд░рдЦрд░рдЦрд╛рд╡ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рд┐рд╕реНрдЯрдо рдХреЙрд▓ (рдЬреИрд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛, рдЦреЛрдЬ рд╕реНрдХреИрдирд┐рдВрдЧ Zend_Search_Lucene) рдмрд╣реБрдд рдЕрдзрд┐рдХ рдореЗрдореЛрд░реА (рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ) рдХреБрдЫ рд╕реНрдерд╛рдиреЛрдВ рдкрд░, рдбреЗрд╡рд▓рдкрд░реНрд╕ рд▓рдВрдмреЗ рдЪрдХреНрд░реЛрдВ рдХреЗ рджреМрд░рд╛рди рдореЗрдореЛрд░реА рдлрд┐рд▓рд┐рдВрдЧ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдирд╛ рднреВрд▓ рдЧрдП)
рджреВрд╕рд░реЗ, рдорд╛рдирдХ
./configure
configure рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рде APC рдХреИрд╢рд┐рдВрдЧ рдХреА рдЕрдиреБрдкрд╕реНрдерд┐рддрд┐ рдореЗрдВ, Diem рдкреГрд╖реНрда рдХреЛ рд▓рдЧрднрдЧ рджреЛ рд╕реЗрдХрдВрдб рдХреЗ рд▓рд┐рдП рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддрд╛ рд╣реИ (рдпрд╣ рд╕рдорд╛рди рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкрд░ 200ms рдкрд░ рд╣реИ, рд▓реЗрдХрд┐рди APC рдХреЗ рд╕рд╛рде) ...
рд▓рдЧрднрдЧред рдпрд╣ рдореЗрд░рд╛ рдЕрдиреБрдорд╛рди рд╣реИ, рдпрд╣ рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рд╕реНрдХреНрд░рд┐рдкреНрдЯ 2000ms рдХреЗ рд▓рд┐рдП рд╡рд░реНрдЪреБрдЕрд▓ рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рдкрд░ рдЪрд▓рддреА рд╣реИ, рдФрд░ VPS 200ms рдкрд░, APC рд╡рд╣рд╛рдВ рдФрд░ рд╡рд╣рд╛рдВ рджреЛрдиреЛрдВ рд╕реНрдерд╛рдкрд┐рдд рд╣реИ, рд▓реЗрдХрд┐рди рд╕рд╛рдЭрд╛ рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рдкрд░ POSIX рд╕рд╛рдЭрд╛ рд╕реНрдореГрддрд┐ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕рд┐рд╕реНрдЯрдо рд╕рдорд░реНрдерди рдирд╣реАрдВ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдорд╛рдорд▓рд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдкреЛрдВ рд╕реЗ рдЗрдирдХрд╛рд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдПрдкреАрд╕реА рдХреЛ рдПрдХ рдЕрд▓рдЧ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рд╕рд╛рде рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ, рдЗрд╕ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдиреЗ рдореБрдЭреЗ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдореЗрдВ рдорджрдж рдХреА рдХрд┐ рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рдерд╛:
рдлреЗрд╕рдмреБрдХ APC рдХреИрд╢рд┐рдВрдЧ рдкрд░ рдлреЗрд╕рдмреБрдХ рдХреА рдЧрд╣рди рд╕рдореАрдХреНрд╖рд╛ рдФрд░ рд╢реЛрдзрд╢рд╣рджрд╕реБрдЦрдж рд╕реЗ: рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕реНрдкрд╖реНрдЯ рднрд╛рд░реАрдкрди рдХреЗ рдмрд╛рд╡рдЬреВрдж, reg.ru рд╕реЗ рд╕рдмрд╕реЗ рд╕рд╕реНрддреЗ рд╡реАрдкреАрдПрд╕ рдкрд░, рдореИрдВ рдЕрдм рдЪреБрдкрдЪрд╛рдк рдкрд╛рдВрдЪ рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рд╕рд╛рде рдорд┐рд▓ рдЬрд╛рддрд╛ рд╣реВрдВ, рд╕рднреА рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдореЗрдореЛрд░реА рд╣реИ, рдЕрдиреБрд░реЛрдз рдХреЗ рдмрд╛рдж рдкреЗрдЬ 200 рдореА рд▓реМрдЯреЗ рд╣реИрдВред рдореИрдВ рдЗрд╕ рддрдереНрдп рд╕реЗ рдХрд╛рдлреА рдкреНрд░рд╕рдиреНрди рд╣реВрдВ, рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдбрд╛рдпрдо рдиреБрдХрд╕рд╛рди рд╕реЗ рдХрдИ рдЕрдзрд┐рдХ рдлрд╛рдпрджреЗ рд╕реЗ рднрд░рд╛ рд╣реБрдЖ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореИрдВ рдмрд╛рдж рдореЗрдВ рдмрд╛рдд рдХрд░реВрдВрдЧрд╛, рдЗрд╕рдореЗрдВ рдирд╣реАрдВ, рд▓реЗрдХрд┐рди рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреЛрд╕реНрдЯ рдореЗрдВред
рдЫреЛрдЯрд╛ рд▓реЗрдХрд┐рди рдЙрддреНрддрд░рджрд╛рдпреА рд╕рдореБрджрд╛рдп рднреА рдкреНрд░рд╕рдиреНрди рд╣реИред рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреА рдЧрддрд┐ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП, рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╣рд░ рджрд┐рди рд╕рдореБрджрд╛рдп рдХрд╛ рджреМрд░рд╛ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ Google рдХреЛ рдирд╣реАрдВ рднреЗрдЬреЗ рдЬрд╛рддреЗ рд╣реИрдВред (рдкреНрд░реЛрд╡рд┐рдВрд▓рд┐:
1 ,
2 )
рд╕рд┐рдореНрдлрдиреА рдХреА рд╕рд░реНрд╡рд╢реНрд░реЗрд╖реНрда рдкрд░рдВрдкрд░рд╛рдУрдВ рдореЗрдВ, рдбрд╛рдпрдо рдЙрдЪреНрдЪ-рдЧреБрдгрд╡рддреНрддрд╛ рдФрд░ рд╕реНрдкрд╖реНрдЯ рдкреНрд░рд▓реЗрдЦрди рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ:
- рд╕рдкреНрддрд╛рд╣ рдбрд╛рдпрдо
7 рджрд┐рдиреЛрдВ рдореЗрдВ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдбреВрдмрдирд╛, 2 рдШрдВрдЯреЗ рдореЗрдВ рдЕрднреНрдпрд╛рд╕ рдЖрдк рд╕рд╛рдкреНрддрд╛рд╣рд┐рдХ рдкрд╛рдареНрдпрдХреНрд░рдо рдХреЗ рд╕рднреА рдЪрд░рдгреЛрдВ рдХреЛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
- рдЖрдо рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХреИрд╕реЗ-рдХреИрд╕реЗ рдЯрд┐рдкреНрд╕
- рдФрд░ рд╕реАрдПрдордПрд╕ рдХреА рд╕рднреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рдПрдХ рд╡рд┐рд╕реНрддреГрдд рдЪрд░рдг-рджрд░-рдЪрд░рдг рд╡рд┐рд╡рд░рдг
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдПрдХ рдордВрдЪ рдФрд░ рдПрдХ Google рд╕рдореВрд╣ рд╣реИ рдЬрд╣рд╛рдВ рдЖрдк рд╕рдореБрджрд╛рдп рд╕реЗ рд╕рд▓рд╛рд╣ рдХреЗ рд▓рд┐рдП рдкреВрдЫ рд╕рдХрддреЗ рд╣реИрдВред
рдпрд╣ рд╕рдм off.site
diem-project.org рдкрд░ рд╣реИрдЕрд░реЗ рд╣рд╛рдБред рдореИрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рднреВрд▓ рдЧрдпрд╛ рдХрд┐
diem-project.ru рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛ рдЬреЛ рдЕрдВрдЧреНрд░реЗрдЬреА рдореЗрдВ рдордЬрдмреВрдд рдирд╣реАрдВ рд╣реИрдВ - diem-project.org рдХрд╛ рдПрдХ рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдЕрдиреБрд╡рд╛рджрд┐рдд рдХреНрд▓реЛрди, рдЗрд╕рдХреЗ рдирд┐рд░реНрдорд╛рддрд╛ рд╡реНрд▓рд╛рджрд┐рд╕реНрд▓рд╛рд╡ рд▓реЗрдЭрдиреЗрд╡ рд╕реЗ рдкрд┐рдЫрд▓реЗ рдкреЛрд╕реНрдЯ рдХреЗ рдмрд╛рдж рд╕рдВрдкрд░реНрдХ рд╣реБрдЖ, рд╣рдордиреЗ рдбрд╛рдпрдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝реА рдмрд╛рдд рдХреА рдФрд░ рдореВрд▓ рд░реВрдк рд╕реЗ рд╕рд╣рдордд рд╣реБрдП рд░рд╛рдп рдореЗрдВ рдХрд┐ рдпрд╣ рд╕реАрдПрдордПрд╕ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдФрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рддрдереНрдп: рдЕрдзрд┐рдХрд╛рдВрд╢ рдкрд░рд┐рдпреЛрдЬрдирд╛ 08/23-2009 рд╕реЗ 01/31/2010 рдХреА рдЕрд╡рдзрд┐ рдореЗрдВ рдПрдХ рд╡реНрдпрдХреНрддрд┐ рджреНрд╡рд╛рд░рд╛ рд▓рд┐рдЦреА рдЧрдИ рдереА, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд▓рдЧрднрдЧ 5 рдФрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рджрд┐рдЦрд╛рдИ рджрд┐рдПред
рджрд░реНрд╢рди
рд╕рд╛рдордЧреНрд░реА рдкреНрд░рдмрдВрдзрди рдореЗрдВ рдореБрдЦреНрдп рд╡рд┐рдЪрд╛рд░ рдЕрд╡рд░реБрджреНрдз рд╣реИред рдпрджрд┐ рдкрд╛рд░рдВрдкрд░рд┐рдХ рд╕реАрдПрдордПрд╕ рдореЗрдВ рдкрд░рдорд╛рдгреБ рд╕рд╛рдордЧреНрд░реА рдЗрдХрд╛рдИ рдкреГрд╖реНрда рд╣реИ (рдЪрд╛рд╣реЗ рд╡рд╣ рдкрд╛рда рдпрд╛ рдлреЛрдЯреЛ рдЧреИрд▓рд░реА рд╣реЛ), рдФрд░ рдкреГрд╖реНрда рдкрд░ рдмреНрд▓реЙрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЕрддрд┐рд░рд┐рдХреНрдд рд░реВрдк рд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЕрдХреНрд╕рд░ рдмрд╣реБрдд рдЕрд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рджреАрдо рдореЗрдВ рдкрд░рдорд╛рдгреБ рд╕рд╛рдордЧреНрд░реА рдПрдХ рдмреНрд▓реЙрдХ рд╣реИ (рдпрд╣ рдПрдХ рд╡рд┐рдЬреЗрдЯ рднреА рд╣реИ)ред
рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╕рд╛рдордЧреНрд░реА рд╕рдВрд░рдЪрдирд╛ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣реИ: рдЯреЗрдореНрдкрд▓реЗрдЯ -> рдХреНрд╖реЗрддреНрд░ -> рдкреГрд╖реНрда -> рд╡рд┐рдЬреЗрдЯ
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдо рджреЛ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдмрдирд╛рддреЗ рд╣реИрдВ: рджреЛ-рд╕реНрддрдВрдн рдФрд░ рддреАрди-рд╕реНрддрдВрдн, рд╣рдордиреЗ рдкреГрд╖реНрда рдХреНрд╖реЗрддреНрд░ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдП рд╣реИрдВ, рдЬрд┐рд╕ рдкрд░ рд╡рд┐рдЧреЗрдЯреНрд╕ рд░рдЦрдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛ред рдЗрд╕рд╕реЗ рдХреЛрдбрд┐рдВрдЧ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддреА рд╣реИ, рдФрд░ рд╕рд╛рдЗрдЯ рдХрд╛ рдкреНрд░рдмрдВрдзрди рд╢реБрд░реВ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рд╣рдо рдЖрд╡рд╢реНрдпрдХ рдмреНрд▓реЙрдХ рдореЗрдВ рдкреЗрдЬ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдбреНрд░реИрдЧ рдФрд░ рдбреНрд░реЙрдк рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдмреНрд▓реЙрдХ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдПрдбрд┐рдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрджрд┐ рдЖрдкрдХреЛ рдХреБрдЫ рд╡рд┐рд╢реЗрд╖ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рд╣рдо рдПрдХ рдореЙрдбреНрдпреВрд▓ рд▓рд┐рдЦрддреЗ рд╣реИрдВ (рдиреАрдЪреЗ рдореЙрдбреНрдпреВрд▓ рд╡рд┐рдХрд╛рд╕ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг), рдореЙрдбреНрдпреВрд▓ рдмреНрд▓реЙрдХ рдХреЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдФрд░ рдЗрд╕ рдмреНрд▓реЙрдХ рдХреЗ рд▓рд┐рдП рд╕рд╛рдордЧреНрд░реА рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред рдФрд░ рдлрд┐рд░ рд╣рдо рдирдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рдмреНрд▓реЙрдХ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рдЬрд╣рд╛рдВ рд╣рдо рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рдЬрдм рд╣рдо рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдЧреНрд░рд╛рд╣рдХ-рдЧреНрд░рд╛рд╣рдХ рдРрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкрд╣рд▓реЗ рдореБрдЭреЗ рдЕрдХреНрд╕рд░ рд╕рд╛рдЗрдбрдмрд╛рд░ (рдмреНрд▓реЙрдХ рд╕реНрдерд╛рдиреЛрдВ рдХреЛ рдЯреЗрдореНрдкрд▓реЗрдЯ рдореЗрдВ рд╣рд╛рд░реНрдбрдХреЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛) рдореЗрдВ рдХреБрдЫ рдмреНрд▓реЙрдХреЛрдВ рдХреЛ рд╕реНрд╡реИрдк рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереА, рдмреЗрд╢рдХ, рдпрд╣ рдЬрд▓реНрджреА рдФрд░ рдЖрд╕рд╛рдиреА рд╕реЗ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рд╣реИрдВрдбрд▓ рдФрд░ рдХреЛрдб рдореЗрдВред рдФрд░ рдпрд╣рд╛рдВ рд╡рд┐рдкрдХреНрд╖ рд╣реИрдВ: рдЧреНрд░рд╛рд╣рдХ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рд╡рд░реНрддрди рдХрд╛ рдПрдХ рд▓рдВрдмрд╛ рд╕рдордп, рд╕рдВрдкрд╛рджрди рдХрд░рддреЗ рд╕рдордп рдПрдХ рддреНрд░реБрдЯрд┐ рдмрдирд╛рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ред рдЕрдм, рдХреНрд▓рд╛рдЗрдВрдЯ рдЦреБрдж рд╣реА рдмреНрд▓реЙрдХ рдХреЛ рд╕реНрдерд╛рдиреЛрдВ рдореЗрдВ рдлрд┐рд░ рд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЬрдм рд╡рд╣ рдЪрд╛рд╣рддрд╛ рд╣реИред
рдореИрдВ рдкреГрд╖реНрда рд╕рд╛рдордЧреНрд░реА рдХреЗ рдкреНрд░рдмрдВрдзрди рдХреЗ рдЙрджрд╛рд╣рд░рдг рджреЗрддрд╛ рд╣реВрдВ:

рдЗрд╕ рдЖрдВрдХрдбрд╝реЗ рдореЗрдВ, рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдкреГрд╖реНрда рдХреЛ рдЬрд╝реЛрди рдФрд░ рд╡рд┐рдЬреЗрдЯреНрд╕ (рдмреНрд▓реЙрдХ) рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЦреАрдВрдЪрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЗрд╕ рдЖрдВрдХрдбрд╝реЗ рдореЗрдВ рд╣рдо рдПрдХ рдЦреБрд▓реА рдореАрдбрд┐рдпрд╛ рдЧреИрд▓рд░реА, рдПрдХ рдмреНрд░реЗрдбрдХреНрд░рдВрдм рд╡рд┐рдЬреЗрдЯ рд╡рд┐рдЬреЗрдЯ рд╡рд┐рдВрдбреЛ рдФрд░ рдПрдХ рд╡рд┐рдЬреЗрдЯ рдкреИрдирд▓ рджреЗрдЦрддреЗ рд╣реИрдВ рдЬрд┐рд╕реЗ рдкреЗрдЬ рдкрд░ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рд╣рдо рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдореЙрдбреНрдпреВрд▓ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ
рдореИрдВ рдЕрдВрддрд┐рдо рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдЬреАрд╡рди рд╕реЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджреВрдВрдЧрд╛: рджреЗрд╢ рджреНрд╡рд╛рд░рд╛ рд╡рд┐рднрд╛рдЬрди рдХреЗ рд╕рд╛рде рд╣реЛрдЯрд▓ рдХрд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рдмрдирд╛рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдФрд░, рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ, рдкреНрд░рд╢рд╛рд╕рди рдХреА рд╕рдВрднрд╛рд╡рдирд╛ред рдЖрдкрдХреЛ рдХрдм рддрдХ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд▓рдЧреЗрдЧрд╛? рдЖрдЗрдП рджреЗрдЦреЗрдВ ...
рдЪрд░рдг 1рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдо рдбреЗрдЯрд╛рдмреЗрд╕ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд░рддреЗ рд╣реИрдВ (Doctrine рдФрд░ YAML рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдпрд╣ рдПрдХ рдЦреБрд╢реА рд╣реИ):
Hotel :<br/> actAs : [ DmSortable, DmGallery ] <br/> columns :<br/> name : { type : string( 255 ), notnull : true } <br/> country_id : { type : integer } <br/> url : { type : string( 255 ) } <br/> text : { type : clob, extra : ckeditor } <br/> is_active : { type : boolean, notnull : true , default : true } <br/> rating : { type : float } <br/> status : { type : integer( 4 ), default : 0 } <br/> votes : { type : integer } <br/> relations :<br/> Products : { foreignAlias : Hotels, class : Product, refClass : ProductHotel } <br/> Country : { foreignAlias : Hotels } <br/> <br/> Country :<br/> columns :<br/> name : { type : string( 255 ), notnull : true } <br/> slug : { type : string( 255 ), notnull : true } <br/>
рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдЬреЛ рдХреБрдЫ рднреА рдЪрд╛рд╣рд┐рдП рд╡рд╣ рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛: рд╣реЛрдЯрд▓ рдХреА рдПрдХ рдореЗрдЬ, рджреЗрд╢реЛрдВ рдХреА рдПрдХ рддрд╛рд▓рд┐рдХрд╛, рдЙрдирдХреЗ рдмреАрдЪ рдХрд╛ рд╕рдВрдмрдВрдзред рдЗрд╕ рдХреЛрдб рдореЗрдВ рдХрдИ Diem рд╕рдВрдХреЗрддрди рд╢рд╛рдорд┐рд▓ рд╣реИрдВ рдЬреЛ рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рд╕рдВрдкреВрд░реНрдг рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рддрд╛рд▓рд┐рдХрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдЕрд░реНрдерд╛рддреН:
is_active, DmSortable, DmGallery extra: ckeditor.
is_active
рдХрд╛ рдЕрд░реНрде рдЗрд╕ рддрдереНрдп рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИ рдХрд┐ рдЕрдм рджреАрдо рдЬрд╛рдирддрд╛ рд╣реИ рдХрд┐ рд╣реЛрдЯрд▓ рд╕реВрдЪрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП "рд╕рдХреНрд░рд┐рдп" рдФрд░ "рдирд┐рд╖реНрдХреНрд░рд┐рдп" рд╡рд╕реНрддреБрдПрдВ рд╣реИрдВред рдкреНрд░рдмрдВрдзрди рдХреЗ рддрд╣рдд, рд╣рдо рдПрдЬрд╛рдХреНрд╕ рдЧрддрд┐рд╡рд┐рдзрд┐ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рдмрдВрдзрди рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВрдЧреЗ, рдФрд░ рдЬрдм рдкреГрд╖реНрда рдкрд░ рджреЗрдЦрд╛ рдЬрд╛рдПрдЧрд╛, рддреЛ рдХреЗрд╡рд▓ рд╕рдХреНрд░рд┐рдп рд░рд┐рдХреЙрд░реНрдб рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗред
extra: ckeditor
рдХрд░рддреЗ рд╕рдордп
extra: ckeditor
рдЬреЛрдбрд╝рддрд╛ рд╣реИред
DmSortable
- рдЖрдкрдХреЛ рд╣реЛрдЯрд▓ рдХреА рд╕реВрдЪреА рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╕реЙрд░реНрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ
DmGallery
- рдЖрдкрдХреЛ рдкреНрд░рддреНрдпреЗрдХ рд╣реЛрдЯрд▓ рдореЗрдВ рдЕрд╕реАрдорд┐рдд рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдлрд╝реЛрдЯреЛ рд╕рдВрд▓рдЧреНрди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рд╕рднреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдореАрдбрд┐рдпрд╛ рдШрдЯрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ Diem рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдФрд░ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рддред рдЖрдкрдХреЛ рдЪрд┐рддреНрд░реЛрдВ рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ, рд╡рд┐рднрд┐рдиреНрди рддрд░реАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрдХрд╛рд░ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╣реИрдВрдбрд▓рд░ рд▓рд┐рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ рдореЗрдВ рдЖрдк рдХрд┐рд╕реА рднреА рдЖрдХрд╛рд░ рдХреЗ рдЪрд┐рддреНрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рджреАрдо рдордХреНрдЦреА рдкрд░ рд╡рд╛рдВрдЫрд┐рдд рдЖрдХрд╛рд░ рдХреА рдПрдХ рддрд╕реНрд╡реАрд░ рдЙрддреНрдкрдиреНрди рдХрд░реЗрдЧрд╛ред
рдЪрд░рдг 2рдЕрдм рд╣рдореЗрдВ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдпрд╣ рдмрддрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рд╣рдо
рдореЙрдбреНрдпреВрд▓ рдФрд░ рдШрдЯрдХреЛрдВ рдореЗрдВ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдХреЛ рдХреИрд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ
рд╣реИрдВ : рдпрд╣ рдЗрд╕реА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдореЗрдВ YAML рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдлрд┐рд░ рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
"" :<br/> <br/> hotel :<br/> model : Hotel<br/> page : true <br/> name : '|' <br/> admin : true <br/> components :<br/> searchForm :<br/> name : ' ' <br/> searchResults :<br/> name : ' ' <br/> show :<br/> <br/> country :<br/> model : Country<br/> name : '|' <br/> admin : true <br/>
рд╣рдордиреЗ рдХреНрдпрд╛ рдХрд┐рдпрд╛: рдЙрдиреНрд╣реЛрдВрдиреЗ рдХрд╣рд╛ рдХрд┐ рд╣реЛрдЯрд▓ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рдореЗрдВ рдкреГрд╖реНрда рд╣реЛрдВрдЧреЗ, рд╣реЛрдЯрд▓ рдФрд░ рджреЗрд╢реЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдЖрдЧреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдмреНрд▓реЙрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА: рд╣реЛрдЯрд▓ рджреГрд╢реНрдп, рд╣реЛрдЯрд▓ рдЦреЛрдЬ рдлрд╝реЙрд░реНрдо рдФрд░ рдЦреЛрдЬ рдлрд╝реЙрд░реНрдо рдкрд░рд┐рдгрд╛рдоред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХреАрд╡рд░реНрдб
list show
рдлреНрд░рдВрдЯ-рдПрдВрдб рдХреЗ рдШрдЯрдХреЛрдВ рдХреЗ рдирд╛рдо рдкрд░
list show
рдЖрдкрдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдХрд┐рд╕реА рд╕реВрдЪреА рдпрд╛ рдПрдХрд▓ рдСрдмреНрдЬреЗрдХреНрдЯ (рдбреЗрдЯрд╛рдмреЗрд╕ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ) рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдпрд╣ рдХреЗрд╡рд▓ рдкреВрд░рд╛ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рд░рд╣рддрд╛ рд╣реИред
рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реНрдХреАрдорд╛ рдФрд░ рдореЙрдбреНрдпреВрд▓ рд╕реНрдХреАрдорд╛ рдХреЗ рд╡рд┐рд╡рд░рдг рдХреЗ рдмрд╛рдж, рд╣рдо рдХрдВрд╕реЛрд▓ рдореЗрдВ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрддреЗ рд╣реИрдВ:
symfony doctrine:generate-migrations-diff
symfony doctrine:migrate
symfony dm:setup
рд╣рдореЗрдВ рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рдХреНрд░рд┐рдпрд╛рдУрдВ рдФрд░ рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ рдХреЗ рд╕рд╛рде рд╣реЛрдЯрд▓ рдФрд░ рджреЗрд╢реЛрдВ рдХреЗ рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП рдЙрддреНрдкрдиреНрди рдУрдЖрд░рдПрдо рдореЙрдбрд▓, рдлрд┐рд▓реНрдЯрд░ рдФрд░ рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк, рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдореЙрдбреНрдпреВрд▓ рдорд┐рд▓рддреЗ рд╣реИрдВред


рдмрд┐рддрд╛рдпрд╛ рдЧрдпрд╛ 20 рдорд┐рдирдЯ рдХрд╛ рд╕рдордп рдЦрд░рд╛рдм рдирд╣реАрдВ рд╣реБрдЖ рдФрд░ рд▓рдЧрднрдЧ 200 рдЕрдХреНрд╖рд░ рдЫрдкреЗред рдореИрдВ, рдПрдХ рдЖрд▓рд╕реА рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд░реВрдк рдореЗрдВ, рдорд╛рдирдХ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛рдУрдВ рд╕реЗ рдкреНрд░рд╕рдиреНрди рдерд╛, рдФрд░ рдПрдХ рдРрд╕реЗ рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд░реВрдк рдореЗрдВ, рдЬреЛ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рдФрд░ рдЙрдЪреНрдЪ-рдЧреБрдгрд╡рддреНрддрд╛ рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╕реЗ рдкреНрдпрд╛рд░ рдХрд░рддрд╛ рдерд╛, рдореИрдВ рдмрд╕ рд╣реИрд░рд╛рди рдерд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд╛ рдЖрдХрд╛рд░, рдЗрд╕рдХреЗ рддрд╛рддреНрдХрд╛рд▓рд┐рдХ рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХреНрд╖реЗрддреНрд░реЛрдВ рджреНрд╡рд╛рд░рд╛ рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ, рд╕рднреА рд╕рд╛рдордЧреНрд░реА рдореЗрдВ рдкреВрд░реНрдг-рдкрд╛рда рдЦреЛрдЬ рдХреА рднреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдореЙрдбреНрдпреВрд▓ред
"рдФрд░ рдпрд╣ рд╕рдм рдирд╣реАрдВ рд╣реИ!" (рд╕реА)
рдПрдХ рдЙрдкрд╣рд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ, рдЖрдкрдХреЛ рдлреНрд░рдВрдЯрдПрдВрдб рдХреЗ рд▓рд┐рдП рдЬреЗрдирд░реЗрдЯ рдХрд┐рдП рдЧрдП рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдорд┐рд▓рддреЗ рд╣реИрдВ, рдЬреЛ рдкреЗрдЬ рдХреЗ рдХрд┐рд╕реА рднреА рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдбреНрд░реИрдЧ рдФрд░ рдбреНрд░реЙрдк рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдбрд╛рдпрдо рдХреЛ рджрд┐рдорд╛рдЧ, рдЯрд╛рдЗрдкрд╕реЗрдЯ рдФрд░ рдбрд┐рдЬрд╛рдЗрди рдмрдирд╛рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдирд╣реАрдВ рдкрддрд╛ рд╣реИ - рдЗрд╕рд▓рд┐рдП, рдпрд╣ рдХрд╛рдо рдЦреБрдж рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рд╣рдореЗрдВ рд╕реБрдЦрдж рдЖрд╢реНрдЪрд░реНрдп рд╣реЛрдЧрд╛ред рдХреНрдпреЛрдВрдХрд┐ рд▓реЗрдЦ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдлреВрд▓рд╛ рд╣реБрдЖ рд╣реИ, рдореИрдВ рд╕рд┐рд░реНрдл "рд╣реЛрдЯрд▓ рд╕реВрдЪреА" рдмреНрд▓реЙрдХ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрджрд╛рд╣рд░рдг рджреВрдВрдЧрд╛:
<?php <br/> <br/> echo _open( 'div.product_list' );<br/> <br/> echo _open( 'ul.smartcolumns' );<br/> <br/> foreach ( $hotels as $hotel )<br/>{<br/> $url = _link( $hotel )->getHref();<br/> $data = 'infotext' ;<br/> <br/> ?> <br/> <li style= "cursor:pointer;" onclick= "window.location = '<?php echo $url ?>';" ><div class = "block hotel" ><br/> <a href= "<?php echo $url ?>" ><br/> <?php if ( $hotel ->getNbMedias()) echo _media( $hotel ->getFirstMedia())->width( 100 ) ?> <br/> </a><br/> <div class = "txt" ><br/> <a href= "<?php echo $url ?>" ><b class = "name" > <?php echo $hotel ->name ?> </b></a><br /><br/> <div class = "txt2" > <?php echo $hotel ->rating ?> </div><br/> <?php echo $data ?> <br /><br/> </div><br/> </div></li><br/> <?php <br/>}<br/> <br/> echo _close( 'ul' );<br/> <br/> echo _close( 'div' );<br/> <br/>use_javascript( '/js/smartcolumns.js' ); <br/>
рдФрд░ рдПрдХ рдЦреЛрдЬ рдлрд╝реЙрд░реНрдо рдХреЛ рд╕реНрд╡рдд: рдкреВрд░реНрдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг:
<? php
/ **
* рд╣реЛрдЯрд▓ рдХреА рдХрд╛рд░реНрд░рд╡рд╛рдИ
* /
рд╡рд░реНрдЧ рдХреЗ рд╣реЛрдЯрд▓рдПрдХреНрд╢рдВрд╕ myFrontModuleActions рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ
{
рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХрд╛рд░реНрдп рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдВред рд╕реНрд╡рдд: рдкреВрд░реНрдг ( dmWebRequest $ рдЕрдиреБрд░реЛрдз )
{
$ рдХреНрд╡реЗрд░реА = $ рдЕрдиреБрд░реЛрдз -> getParameter ( 'рдХреНрд╡реЗрд░реА' , 0 ) ;
рдЕрдЧрд░ ( $ рдХреНрд╡реЗрд░реА )
{
$ рд╕реАрдорд╛ = 10 ;
$ q = RequestFilter :: sanitizeString ( $ рдХреНрд╡реЗрд░реА ) ;
$ рдХреНрд╡реЗрд░реА = Doctrine_Query :: рдмрдирд╛рдПрдВ ( )
-> рдЪреБрдиреЗрдВ ( 'h.id, h.name' )
-> ( 'рд╣реЛрдЯрд▓ рдПрдЪ' ) рд╕реЗ
-> рдЬрд╣рд╛рдВ ( "LOWER (рдирд╛рдо) REGEXP '^ {$ q} ред * | [^ -] [-] {$ q} [^]] * $'" )
-> рдСрд░реНрдбрд░рдмрд╛рдп ( 'h.rating DESC, h.name ASC' )
-> рд╕реАрдорд╛ ( $ рд╕реАрдорд╛ ) ;
$ res = $ рдХреНрд╡реЗрд░реА -> рдирд┐рд╖реНрдкрд╛рджрд┐рдд ( ) ;
рдпрджрд┐ ( рдЧрдгрдирд╛ ( $ res ) )
{
$ рдЬреЛрдВрд╕ = рд╕рд░рдгреА (
'рд╕реБрдЭрд╛рд╡' => рд╕рд░рдгреА ( ) ,
'рдбреЗрдЯрд╛' => рд╕рд░рдгреА ( ) ,
) ;
foreach ( $ res рдХреЗ рд░реВрдк рдореЗрдВ $ рдХреБрдВрдЬреА => $ рд╡реИрд▓ )
{
$ json [ 'рд╕реБрдЭрд╛рд╡' ] [ ] = $ val -> рдирд╛рдо ;
$ json [ 'рдбреЗрдЯрд╛' ] [ ] = $ val -> id ;
}
$ рдпрд╣ -> getResponse ( ) -> setContentType ( 'рдПрдкреНрд▓рд┐рдХреЗрд╢рди / json' ) ;
$ рдпрд╣ рд▓реМрдЯрд╛рдПрдБ -> рд░реЗрдВрдбрд░рдЯреЗрдХреНрд╕реНрдЯ ( json_encode ( $ json ) ) ;
}
}
рд╡рд╛рдкрд╕реА sfView :: рдХреЛрдИ рдирд╣реАрдВ ;
}
}
рд╕рднреА рд╡рд░реНрдгрд┐рдд рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЗ рд▓рд┐рдП рд▓реЗрдЖрдЙрдЯ рдФрд░ рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рд▓рдЧрднрдЧ рджреЛ рдШрдВрдЯреЗ рд▓рдЧреЗред
рдиреБрдХрд╕рд╛рди
рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рдореИрдВ рдмрддрд╛рддрд╛ рд╣реВрдБ рдХрд┐ рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рди рдХреМрди-рдХреМрди рд╕реА рдХрдард┐рдирд╛рдЗрдпрд╛рдБ рдЖрдкрдХреЛ рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд╕рдХрддреА рд╣реИрдВ (рд╕рд┐рд╕реНрдЯрдо рдЕрднреА рднреА рдХрдЪреНрдЪрд╛ рдФрд░ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рд╣реИ)
1. рд▓реЛрдб рдХрд░рддреЗ рд╕рдордп рд░реВрд╕реА-рднрд╛рд╖рд╛ рдХреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдирд╛рдо рдирд╣реАрдВ рд▓рд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрдм рдПрдХ рдпреВрдЖрд░рдПрд▓ рдЙрддреНрдкрдиреНрди рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, url- рдорд╛рдиреНрдп рд╡рд░реНрдгреЛрдВ рдореЗрдВ рд░реВрдкрд╛рдВрддрд░рдг рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЗрд╕ рддрдереНрдп рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдереА рдХрд┐ рдХреБрдЫ рдлрд╛рдЗрд▓реЗрдВ рд▓реЛрдб рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдмрд╕ рдЧрд╛рдпрдм рд╣реЛ рдЧрдИрдВред рдЕрдзрд┐рдХ рд╕рдЯреАрдХ рд░реВрдк рд╕реЗ, рд╡реЗ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдФрд░ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдмрдиреЗ рд░рд╣реЗ, рд▓реЗрдХрд┐рди рдбрд╛рдпрдо рдиреЗ рдЙрдиреНрд╣реЗрдВ рдирд╣реАрдВ рджреЗрдЦрд╛ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣рд╛рдВ рдХрд╛рд░рдг mb_string_functions рдХреЗ рдмрдЬрд╛рдп рдкрджрд╛рд╡рдирдд рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рдореЗрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐ рдлреНрд░реЗрдВрдЪ рдХреЛ UTF-8 рд▓рд╛рдЗрдиреЛрдВ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдерд╛ ... рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдореИрдВрдиреЗ рдмрд╣реБрдд рдЬреНрдпрд╛рджрд╛ рдЦреБрджрд╛рдИ рдирд╣реАрдВ рдХреА рдереА, рдореБрдЭреЗ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо url рдХреЗ рд▓рд┐рдП рдорд╛рдиреНрдп рд╡рд░реНрдгреЛрдВ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдХреЗ рдЗрд▓рд╛рдЬ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП a-z0-9_-
2. рд╣рд░ рдмрд╛рд░ рдЬрдм рдЖрдк рдореАрдбрд┐рдпрд╛ рдЧреИрд▓рд░реА рддрдХ рдкрд╣реБрдБрдЪрддреЗ рд╣реИрдВ рддреЛ рдореЗрдореЛрд░реА рдХреА рдЦрдкрдд рдлрд╝рд╛рдЗрд▓ рд╡реГрджреНрдзрд┐ рдХреЗ рд╕рд╛рде рдмрдврд╝ рдЬрд╛рддреА рд╣реИ, рдЬреЛ рдмрдбрд╝реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕реНрд╡реАрдХрд╛рд░реНрдп рдирд╣реАрдВ рд╣реИред 500MB рдЫрд╡рд┐рдпреЛрдВ рд╡рд╛рд▓реЗ рдПрдХ рд╣реЛрдЯрд▓ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд▓рд┐рдП, рдореАрдбрд┐рдпрд╛ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдЦреЛрд▓рдиреЗ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░ рджрд┐рдпрд╛ред
рдХреЛрдб рдореЗрдВ рджреЗрд░реА рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рдореБрдЭреЗ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдСрдмреНрдЬреЗрдХреНрдЯ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдкрд░ рд╣рд░ рдмрд╛рд░ рдПрдХ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬрд╝реЗрд╢рди рдХреЙрд▓ рдорд┐рд▓рд╛, рдпрд╣ рдЗрд╕рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддрд╛рдХрд┐ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╕реНрдЯреЛрд░реЗрдЬ рдХреЗ рдлрд╝реЛрд▓реНрдбрд░реНрд╕ рдФрд░ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рдЕрдк-рдЯреВ-рдбреЗрдЯ (рдЕрдЪрд╛рдирдХ рд╣рдо ftp рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рдлрд╛рдЗрд▓ рдЕрдкрд▓реЛрдб рдХрд░реЗрдВ)ред
рдмрд╛рдд рд╕рдВрд╕рд╛рдзрди-рдЧрд╣рди рд╣реИ рдФрд░ рдмрд╣реБрдд рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдХреЗрд╡рд▓ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝реЗрд╢рди рдХреЗ рд▓рд┐рдП рд▓рд╛рдЗрди рдмрд╛рд╣рд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░реЗрдВ рдФрд░ рд╢рд╛рдВрдд рд╣реЛ рдЬрд╛рдПрдВред
3. Diem рдкреЗрдЬ рд░реЗрдВрдбрд░рд┐рдВрдЧ рдХреЛ рдЧрддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА CSS рдФрд░ JavaScript рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЫреЛрдЯрд╛ рдФрд░ рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░рддрд╛ рд╣реИред рдФрд░ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдкреГрд╖реНрда рдХреЗ рдЕрдВрдд рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рд╣рдо рдпрд╛рд╣реВ рд╕реЗ
nerds рджреНрд╡рд╛рд░рд╛ рд╕рд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ ред рдпрджрд┐ рдЖрдк рдЯреЗрдореНрдкрд▓реЗрдЯ рдореЗрдВ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ jQuery рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рддреЛ рдЖрдкрдХреЛ рдкреЗрдЬ рд╣реЗрдбрд░ рдореЗрдВ рдХрдиреЗрдХреНрдЯ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП jquery рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, config / dm / config.yml рдореЗрдВ рдЖрдкрдХреЛ рдпрд╣ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдХреМрди рд╕реА рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╣реЗрдбрд░ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЖрдк рд╡рд╣рд╛рдВ jquery рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Google CDN рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЛ рднреА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдкрд░рд┐рдгрд╛рдо
1. рдЕрдм рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ Diem CMS рдХреНрдпрд╛ рд╣реИ, рдЗрд╕ CMS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдЖрдкрдХреЛ рдХреНрдпрд╛ рд╡рд┐рдХрд╛рд╕ рд▓рд╛рдн рдорд┐рд▓рддреЗ рд╣реИрдВ рдФрд░ рд╕рд╛рдордЧреНрд░реА рдкреНрд░рдмрдВрдзрди рдкреНрд░рддрд┐рдорд╛рди рдЕрдиреНрдп CMS рд╕реЗ рдХреИрд╕реЗ рднрд┐рдиреНрди рд╣реЛрддрд╛ рд╣реИред
2. рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдЖрдк VPS рдпрд╛ рд╕рдорд░реНрдкрд┐рдд рд╕рд░реНрд╡рд░ рдкрд░ Diem рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╕рд╛рдЭрд╛ рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рдкрд░ рдпрд╣ рдмреЗрд╣рддрд░ рд╣реИ рдХрд┐ рдХреЛрд╢рд┐рд╢ рди рдХрд░реЗрдВред (рд╣рд╛рд▓рд╛рдВрдХрд┐, рдкреНрд░рдпреЛрдЧ рдХреЗ рд▓рд┐рдП, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рд░ рдХрд┐рд╕реА рдХреЛ рдпрд╣ рдЬрд╛рдирдиреЗ рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдкреА рд╣реЛрдЧреА рдХрд┐ рдЖрдкрдХреА рдореЗрдЬрдмрд╛рдиреА рдХреЗ рд▓рд┐рдП рдПрдХ рдкреЗрдЬ рдмрдирд╛рдиреЗ рдореЗрдВ рдХрд┐рддрдиреЗ рдорд┐рд▓реАрд╕реЗрдХрдВрдб рд▓рдЧрддреЗ рд╣реИрдВ)
3. рдЖрдк рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдореЙрдбреНрдпреВрд▓ рдХреЛ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реЛ рдЧрдП рдФрд░, рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ, рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░ рд▓рд┐рдпрд╛ рд╣реИ рдХрд┐ рдбрд╛рдпрдо рдХреЗ рд╕рд╛рде рдЖрдк рдЕрдкрдиреЗ рдкреВрд░реЗ рд╣рд╛рде рд╕реЗ рдЖрд╕рд╛рдиреА рд╕реЗ рдФрд░ рдЬрд▓реНрджреА рд╕реЗ рдРрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
4. рдЖрдкрдиреЗ рд╕реАрдЦрд╛ рдХрд┐ рдХреНрдпрд╛ рдХрдард┐рдирд╛рдЗрдпрд╛рдБ рдЖ рд╕рдХрддреА рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдХреИрд╕реЗ рджреВрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рд╡рд╣ рд╕рдм рдХреБрдЫ рдирд╣реАрдВ рдЬреЛ рдореИрдВ рд▓реЗрдЦ рдореЗрдВ рдлрд┐рдЯ рдмрддрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ред рдПрд╕рдИрдУ рдЕрдиреБрдХреВрд▓рди, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрднрд┐рдЧрдо рдирд┐рдпрдВрддреНрд░рдг рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдФрд░ рдХреБрдЫ рд▓реЗрдЖрдЙрдЯ рдмрдЧ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдПрдХ рдЫреЛрдЯреЗ рд╕реАрдПрд╕рдПрд╕ рд╕рдВрд╢реЛрдзрди рдХреЗ рдкреНрд░рд╢реНрди рдЕрд╕реНрдкрд╖реНрдЯреАрдХреГрдд рдмрдиреЗ рд░рд╣реЗред рдореИрдВ рдЕрдЧрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рдЗрди рд╡рд┐рд╖рдпреЛрдВ рдХреЛ рдлрд┐рдЯ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣рд╛ рд╣реВрдВред
рдкреБрдирд╢реНрдЪ: рдЬреЛ рдХреЛрдИ рднреА рддреНрд░реБрдЯрд┐ рджреЗрдЦрддрд╛ рд╣реИ, рд╡рд╣ рдЪреБрдк рдирд╣реАрдВ рд░рд╣ рдкрд╛рдПрдЧрд╛ рдФрд░ рдПрдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкрддреНрд░ рдореЗрдВ рд▓рд┐рдЦ рд╕рдХрддрд╛ рд╣реИ - рдореИрдВ рдЖрднрд╛рд░реА рд░рд╣реВрдВрдЧрд╛ рдФрд░ рдЗрд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред