рдЗрдореЗрдЬрд┐рдХ рдХреНрд▓рд╛рд╕ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░

рдореЗрд░реЗ рд╕рднреА рдкреНрд░рдердо рдкрд╛рдардХреЛрдВ рдХреЛ рдореЗрд░рд╛ рдирдорд╕реНрдХрд╛рд░!

рдЯрд╛рдИ


рдореБрдЭреЗ рдЗрдореЗрдЬрд┐рдХ рд▓рд╛рдЗрдмреНрд░реЗрд░реАрдЬрд╝ рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рд╣реА рдмрдЧ рджреНрд╡рд╛рд░рд╛ рдЗрд╕ рдкрд╣рд▓реЗ рд▓реЗрдЦ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЗрд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛, рдЬрд┐рд╕рдореЗрдВ рдореБрдЭреЗ рдХреБрдЫ рд╕рдордп рд▓рдЧрд╛ред

рдпрд╣ рд╕рдм рдЗрд╕ рддрдереНрдп рд╕реЗ рд╢реБрд░реВ рд╣реБрдЖ рдХрд┐ рдЫрд╡рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП php рдореЗрдВ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╡рд░реНрдЧ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдХрд╛рд░реНрдп рдерд╛ред рдореИрдВрдиреЗ рдЗрдореЗрдЬрдореИрдЬрд┐рдХ рдХреА рдорджрдж рдФрд░ рдЗрдореЗрдЬрд┐рдХ рдХреЗ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд╛ рд╕рд╣рд╛рд░рд╛ рд▓реЗрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред
рдЗрдореЗрдЬрд┐рдХ рдХреНрд▓рд╛рд╕ рдореЗрдВ рд╕реНрд╡рдпрдВ рд╡реНрдпрд╛рдкрдХ рддрд░реАрдХреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереА рдХрд┐ рдЗрд╕рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рдП рдФрд░ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рддрд░реАрдХреЛрдВ рдХреЛ рдЬреЛрдбрд╝рд╛ рдЬрд╛рдП, рдЬреИрд╕реЗ рдХрд┐ рдЫрд╡рд┐ рдХреИрд╢ рдХреЗ рдЕрд╕реНрддрд┐рддреНрд╡ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рдФрд░ рдЗрд╕реЗ рд░рд╛рд╕реНрддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛, рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХреИрд╢рд┐рдВрдЧ рд╕реНрд╡рдпрдВ рдФрд░ рдХреБрдЫ рдЕрдиреНрдп рд╕рд╣рд╛рдпрдХред

рдЗрди рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд╡рд░реНрдЧ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдерд╛:
<?php namespace app; class Images extends \Imagick { private $_filePath = null; private $_cacheFile = null; //   public function readImage($filePath) { $this->_filePath = $filePath; parent::readImage($this->_filePath); } // -   public function myMethod() { } //    ... ?> 


рдЕрдм рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рд╡рд░реНрдЧ рдХрд╛рдо рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред

рдЙрддреНрдХрд░реНрд╖


рдЗрд╕ рдХреЛрдб рдХреА рдЕрдХреНрд╖рдорддрд╛ рдХрд╛ рдХрд╛рд░рдг рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕ рд╡рд░реНрдЧ рдХрд╛ рд╕рджрд╕реНрдп "_filePath", рдХрд┐рд╕реА рдЕрдиреНрдп рдХреА рддрд░рд╣, NULL рд╣реЛрдЧрд╛ред рдпрд╣ рдмрдЧ тДЦ59565 рд╣реИ

рд╕рдорд╕реНрдпрд╛ рдирд┐рд░реНрдгрд╛рдпрдХ рд╣реЛ рдЧрдИ, рдХреНрдпреЛрдВрдХрд┐ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛, рдореЗрд░реА рдХрдХреНрд╖рд╛ рдиреЗ рд╕рднреА рдЕрд░реНрде рдЦреЛ рджрд┐рдПред

рдкрд░рд┐рдгрд╛рдо


рдЗрд╕ рддрд░рд╣ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдХрд┐ рд╕рднреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛, рд▓рдЪреАрд▓реЗрдкрди рдХреЛ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдЗрдореЗрдЬрд┐рдХ рдХреА рдПрдХ рд╕реНрдерд┐рд░ рд░рд┐рд▓реАрдЬ рдХреЗ рд╕рд╛рде, рдХреЛрдб рдореЗрдВ рдиреНрдпреВрдирддрдо рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХреЗ рд╕рд╛рде "рд╕рд╣реА рд░рд╛рд╕реНрддреЗ" рдкрд░ рдЬрд╛рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛ред

рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдЬрд╛рджреВ рдХреА __call рдкрджреНрдзрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореЗрд░реЗ рд╕рд╛рде рд╣реБрдЖ, рдЬрд┐рд╕реЗ рддрдм рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рд╣рдорд╛рд░реА рдХрдХреНрд╖рд╛ рдХреА рддрдерд╛рдХрдерд┐рдд рд╡рд┐рдзрд┐ рдирд╣реАрдВ рдорд┐рд▓рддреА рд╣реИред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рд╡рд░реНрдЧ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдерд╛:

 <?php namespace app; class Images { private $_filePath = null; private $_cacheFile = null; private $_Imagick = null; public function __construct() { $this->_Imagick = new \Imagick(); } //   public function readImage($filePath) { $this->_filePath = $filePath; $this->_Imagick->readImage($this->_filePath); } // -   public function myMethod() { } // ,    public function __call($name, $args) { return call_user_func_array(array($this->_Imagick, $name), $args); } //    ... ?> 

рдирд┐рд╖реНрдХрд░реНрд╖


рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рд╕рдорд╛рдзрд╛рди рд╡рд┐рдзрд┐ рдХреБрдЫ рдкреНрд░рдХрд╛рд░ рдХреА рдмреИрд╕рд╛рдЦреА рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдпрд╣ рд╕рдмрд╕реЗ рдЙрдкрдпреБрдХреНрдд рд╣реИред
рдПрдХ рд╕реНрдерд┐рд░ рд░рд┐рд▓реАрдЬ рдХреЗ рдмрд╛рдж, рдХрдХреНрд╖рд╛ рдореЗрдВ "рдПрдХреНрд╕рдЯреЗрдВрдбреЗрдб \ рдЗрдореЗрдЬрд┐рдХ" рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдФрд░ "__call" рддрд░реАрдХреЛрдВ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛрдЧрд╛
рдФрд░ рдирд┐рд░реНрдорд╛рддрд╛ред
PECL рдЗрдореЗрдЬрд┐рдХ - рдЖрдЬ рдХреЗ рд▓рд┐рдП, рд╕рдВрд╕реНрдХрд░рдг 3.0.1 рдирд╡реАрдирддрдо рд╕реНрдерд┐рд░ рд╣реИред "3.1.0b1" рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдмрдЧ рдкрд╣рд▓реЗ рд╕реЗ рддрдп рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкрд╣рд▓реЗ рд╕реЗ рд╣реА "3.1.0RC1" рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕реНрдерд┐рд░ рд╕рдВрд╕реНрдХрд░рдг рдХрдм рдирд┐рдХрд▓рддрд╛ рд╣реИ - рдпрд╣ рдЕрднреА рддрдХ рдЬреНрдЮрд╛рдд рдирд╣реАрдВ рд╣реИред

рдореБрдЭреЗ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЛ рд╕реБрдирдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреА рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдФрд░ рдЙрдирдХреЗ рд╕рдорд╛рдзрд╛рди рд╕реЗ рдорд┐рд▓реЗ рд╣реИрдВред

Source: https://habr.com/ru/post/In138179/


All Articles