рдХрдИ, рд╕рд╛рде рд╣реА рд╕рд╛рде рдореЗрд░рд╛, рд╕рдордп-рд╕рдордп рдкрд░ рдХреБрдЫ рдЫреЛрдЯреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕рд╛рдЗрдЯ / рдПрдкреАрдЖрдИ рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░реЗрдВ рдФрд░ рдбреЗрдЯрд╛ рдХреЛ xml / json / csv рдореЗрдВ рд╕рд╣реЗрдЬреЗрдВ, рдХреЛрдИ рднреА рдЧрдгрдирд╛ рдХрд░реЗрдВ / рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХрд░реЗрдВ, рдбреЗрдЯрд╛ рдХреЛ рдПрдХ рдкреНрд░рд╛рд░реВрдк рд╕реЗ рджреВрд╕рд░реЗ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд▓реЗ рдЬрд╛рдПрдВ, рдЖрдВрдХрдбрд╝реЗ рдПрдХрддреНрд░ рдХрд░реЗрдВ, рдЖрджрд┐ред рдЖрджрд┐ рдореИрдВ рдзреНрдпрд╛рди рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рд╣рдо рд╡рд░реНрддрдорд╛рди рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рднрд╛рд░реА рдврд╛рдВрдЪрд╛ рдЗрдХрдЯреНрдард╛ рдХрд░рдирд╛ рдФрд░ рдХреЛрдб рдХреЗ рднреАрддрд░ рд╡рд░реНрддрдорд╛рди рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЖрд▓рд╕реА рд╣реИ, рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рд╕реМрдВрджрд░реНрдпрд╡рд╛рджреА рд░реВрдк рд╕реЗ рдкреНрд░рд╕рдиреНрди рдирд╣реАрдВ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдЕрдкрдирд╛ рд╕рдордп рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдиреА рд╣реЛрдЧреА, рдЙрд╕рдореЗрдВ рдкрд┐рдЫрд▓реЗ рдШрдЯрдирд╛рдХреНрд░рдореЛрдВ рд╕реЗ рдХреЛрдб рдХреЗ рдЯреБрдХрдбрд╝реЗ рдХреЛ рдХреЙрдкреА рдФрд░ рдкреЗрд╕реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдХрдИ рддрд░рд╣ рдХреА рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ рдХрдиреЗрдХреНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдХрдВрд╕реЛрд▓ рд╕реЗ рдЪрд▓рд╛рдирд╛ рд╣реЛрдЧрд╛ред рдЗрд╕рдХреЗ рд▓рд┐рдП рдЕрдХреНрд╕рд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреА рдХреБрдЫ рдЕрдиреНрддрд░рдХреНрд░рд┐рдпрд╛рд╢реАрд▓рддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ: рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╡рд┐рдХрд▓реНрдк / рддрд░реНрдХ, рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╕рдВрд╡рд╛рдж рдмрд╛рддрдЪреАрдд рднреАред рдпрд╣рд╛рдБ рдореБрдЦреНрдп рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдХреЛрдИ рдордиреЛрджрд╢рд╛ рдирд╣реАрдВ рд╣реИ, рдЬреЛ рдХрд┐ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ "рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЦрд╛рдиреЗ рдХреЗ рд╕рд╛рде рдЖрддрд╛ рд╣реИ" рджреНрд╡рд╛рд░рд╛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╡рд░реНрдгрд┐рдд рд╣реИ, рддреЛ рдпрд╣ рдмрд┐рд▓реНрдХреБрд▓ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдХрд╛рд░реНрдп рдкрд░ рдХреНрдпрд╛ рдХрд╛рдо рд╣реЛрдЧрд╛ =)
рдРрд╕реЗ рдХреНрд╖рдгреЛрдВ рдореЗрдВ, рдореБрдЭреЗ рдПрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╕рд┐рдореНрдлрдиреА рдХрдВрд╕реЛрд▓ рдпрд╛рдж рдЖрдпрд╛, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдореБрдЭреЗ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рджреМрд░рд╛рди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛
рд╕рд┐рдореНрдлрдиреА 2. рдЕрдиреНрдп рдХрдВрд╕реЛрд▓ (zend, yii, django, ror рдЖрджрд┐) рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЕрдкрд░рд╛рдз рдирд╣реАрдВ рд╣реИ, рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реИ, рдпрд╣ рдмрд╕ рд╣реБрдЖред
рдЬрдм рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рдореБрдЭреЗ рдХреБрдЫ рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рдкрдбрд╝реА, рддреЛ рдореБрдЭреЗ рдлрд┐рд░ рд╕реЗ рд╕рд┐рдореНрдлрдиреА рдХрдВрд╕реЛрд▓ (
рдХрдВрд╕реЛрд▓ рдХрдВрдкреЛрдиреЗрдВрдЯ ) рдпрд╛рдж рдЖрдпрд╛ рдФрд░ рдпрд╣ рддрдереНрдп рдХрд┐ рдЗрд╕ рд╕реНрд╡рддрдВрддреНрд░ рдШрдЯрдХ рдиреЗ рдореБрдЭреЗ рдЕрдкрдиреА рдХреНрд╖рдорддрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рд╕реЗ рдЕрдзрд┐рдХ рдзрдХреНрдХрд╛ рджрд┐рдпрд╛ред
рдХреБрдЫ рдШрдВрдЯреЛрдВ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдПрдХ рд╕рд░рд▓
рдЙрдкрдХрд░рдг рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдирд┐рдХрд▓рд╛:
рдФрд░
рд╕рдВрдЧреАрддрдХрд╛рд░ рдирд┐рд░реНрднрд░рддрд╛ рдкреНрд░рдмрдВрдзрдХ, рдЬреЛ рд╣рдореЗрдВ рдпрд╣ рд╕рдм рдЗрдХрдЯреНрдард╛ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛, рдирдП рдЬреЛрдбрд╝ рджреЗрдЧрд╛, рдФрд░ рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рдСрдЯреЛрд▓реЙрдб рдХрд╛ рднреА рдзреНрдпрд╛рди рд░рдЦреЗрдЧрд╛ред
рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд╡реАрдирддрдо рд╕рдорд╛рдЪрд╛рд░, "рдЗрдВрдЯрд░рдиреЗрдЯ" рд╡рд┐рд╖рдпреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рдПрдХрддреНрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдФрд░ рдПрдХ рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ, рд╣рдо Yandex.News RSS рд╕реЗрд╡рд╛ рд╕реЗ рдХрд╛рдлреА рдЦреБрд╢ рд╣реИрдВред
omposer рдХреЗ рдЙрдкрдпреЛрдЧ рд╕реЗ рд╣рдо рдПрдХ рдирдИ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВ:
$ composer create-project suncat/console-commands ./cmd
рдореЗрд░реЗ рдкрд╛рд╕ рдХрдВрдкреЛрдЬрд░
рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╣рдореЗрд╢рд╛ рдЙрдкрд▓рдмреНрдз рд╣реИред рдпрджрд┐ рдЖрдк рдЕрднреА рддрдХ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдЙрджрд╛рд╣рд░рдг рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ
рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдФрд░ рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдмрдирд╛рдИ рдЧрдИ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдкрд░ рдЬрд╛рдПрдВ:
$ cd cmd
рд╕рдВрд░рдЪрдирд╛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:
app/ console
рд╕реНрдерд┐рддрд┐ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ:
$ app/console list
рдпрджрд┐ рд╣рдо рд╕рд╣рд╛рдпрддрд╛ рдЬрд╛рдирдХрд╛рд░реА рдФрд░ рдЙрдкрд▓рдмреНрдз рдЖрджреЗрд╢реЛрдВ рдХреА рд╕реВрдЪреА рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реИред рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:

рдЕрдм рдЙрд╕ рдХрдорд╛рдВрдб рдХреЗ рд▓рд┐рдП рдПрдХ рдХреНрд▓рд╛рд╕ рдЯреЗрдореНрдкрд▓реЗрдЯ рдмрдирд╛рдПрдВ рдЬрд┐рд╕реЗ рд╣рдо рдХрд╛рд░реНрдп рдХреЛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВ:
$ app/console generate
рджрд┐рдЦрд╛рдИ рджреЗрдиреЗ рд╡рд╛рд▓реЗ рд╕рдВрд╡рд╛рдж рдореЗрдВ, рднрд╡рд┐рд╖реНрдп рдХреЗ рд╡рд░реНрдЧ рдХрд╛ рдирд╛рдо рдЗрдВрдЧрд┐рдд рдХрд░реЗрдВ:
Please enter the name of the command class: NewsInternetCommand
рдЬрд╡рд╛рдм рдореЗрдВ, рд╣рдо рдПрдХ рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВрдЧреЗ:
Generated new command class to "./cmd/src/Command/NewsInternetCommand.php"
рджрд░рдЕрд╕рд▓, рдЯреАрдо рддреИрдпрд╛рд░ рд╣реИ, рдпрд╣ рдЙрдкрд▓рдмреНрдз рдЯреАрдореЛрдВ рдХреА рд╕реВрдЪреА рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреА:

рд▓реЗрдХрд┐рди рдЬрдм рд╡рд╣ рдРрд╕рд╛ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ (рдпрд╣рд╛рдВ рдЖрдк рдЖрдИрдбреАрдИ рдпрд╛ рдЕрдкрдиреЗ рдкрд╕рдВрджреАрджрд╛ рд╕рдВрдкрд╛рджрдХ рдореЗрдВ рдирд┐рд░реНрдорд┐рдд рд╡рд░реНрдЧ рдЦреЛрд▓ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХрдорд╛рдВрдб рдХреЛрдб рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ)ред
рдЪреВрдВрдХрд┐ рд╣рдорд╛рд░реЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдмрд╛рд╣рд░реА рд╕рд╛рдордЧреНрд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдФрд░ рд╣рдореЗрдВ OOP рдкрд╕рдВрдж рд╣реИ, рд╣рдо рдПрдХ рдФрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдбрд╛рд▓реЗрдВрдЧреЗ:
$ composer require kriswallsmith/buzz 0.9
Buzz PHP5.3 рдореЗрдВ рдПрдХ рд╣рд▓реНрдХрд╛ HTTP рдХреНрд▓рд╛рдЗрдВрдЯ рд╣реИред рд╣рдо рд╕рдорд╛рдЪрд╛рд░ рд╕реЗрд╡рд╛ рдХреЗ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред
рдЖрдЗрдП рдПрдХ рдЕрд▓рдЧ рд╡рд░реНрдЧ рдмрдирд╛рдПрдВ - YandexRSSNewsParser, рдЬреЛ рдЯреАрдо рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╕рд╛рдордЧреНрд░реА рдХреЗ рд╕рд╛рде рдХрдХреНрд╖рд╛ рдкреНрд░рджрд╛рди рдХрд░реЗрдЧрд╛:
рдФрд░ рд╣рдо рдХрдВрд╕реЛрд▓ рдореЗрдВ рдирд╡реАрдирддрдо рд╕рдорд╛рдЪрд╛рд░ рд╢реАрд░реНрд╖рдХреЛрдВ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб рдХреНрд▓рд╛рд╕ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВрдЧреЗ, рд╢реАрд░реНрд╖рдХ "рдЗрдВрдЯрд░рдиреЗрдЯ":
рдЕрдм рддреИрдпрд╛рд░ рдХрдорд╛рдВрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░реЗрдВ:
$ app/console news:internet
рдкрд░рд┐рдгрд╛рдо:

рдпрд╣ рдмрд╣реБрдд рд╕рд░рд▓ рдирд┐рдХрд▓рд╛, рд▓реЗрдХрд┐рди рд╕рд┐рдореНрдлрдиреА / рдХрдВрд╕реЛрд▓ рдФрд░ рдХрдВрдкреЛрдЬрд╝рд░ рдХреЗ рдХрд╛рд░рдг, PHP рдореЗрдВ рдХрдВрд╕реЛрд▓ рдХрдорд╛рдВрдб рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рдЪреАрд▓рд╛ рдФрд░ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдЙрдкрдХрд░рдг рд╣реИред