рдбреЗрдмрд┐рдпрди рд▓рд┐рдирдХреНрд╕ рдХреЗ рддрд╣рдд PHP рдЗрдВрдЯрд░реЗрдХреНрдЯрд┐рд╡ рдХрдВрд╕реЛрд▓ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди

рд╢рд╛рдпрдж, рдХрдИ рдПрдХ рдЯреВрдЯреА рд╣реБрдИ рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рдХрдВрд╕реЛрд▓ PHP рдХреЗ рдореБрджреНрджреЗ рдкрд░ рдЖрдП рдереЗред

рдЬрдм рддреБрдо рдкреНрд░рд╡реЗрд╢ рдХрд░рддреЗ рд╣реЛ
# php -a

рдФрд░ рдЖрдк рдХреЗрд╡рд▓ рд╢рд┐рд▓рд╛рд▓реЗрдЦ "рдЗрдВрдЯрд░рдПрдХреНрдЯрд┐рд╡ рдореЛрдб рд╕рдХреНрд╖рдо" рджреЗрдЦрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдЖрдк рдЬреЛ рднреА рджрд░реНрдЬ рдХрд░рддреЗ рд╣реИрдВ, рджрд░реНрдЬ рдХреА рдЧрдИ рдХрдорд╛рдВрдб рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдФрд░ рдирд┐рд╖реНрдкрд╛рджрди рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕рдЪ рдирд╣реАрдВ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдореЛрдб рд╣реИ, рдЬрд┐рд╕реЗ рдЕрднреА рднреА рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕ рд╡рд┐рдзрд╛ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХрд╛ рд╡рд░реНрдгрди рдореЗрд░реА рдкреЛрд╕реНрдЯ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИред рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдмрд┐рди рдмреБрд▓рд╛рдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ: рдХреБрдЫ рднреА рдирд╣реАрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди "рдХрд╛рдо" рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рд╣рдо рдЕрдЬрдЧрд░ рдпрд╛ рдиреЛрдб рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рд╕рд╛рдВрддреНрд╡рдирд╛ рджреЗрддреЗ рд╣реИрдВ, рд╣рдо рдЗрд╕реЗ рдХрд░реЗрдВрдЧреЗред


рдХреБрдЫ googling рдХреЗ рдмрд╛рдж, рдЕрдзрд┐рдХрд╛рдВрд╢ рд▓рд┐рдВрдХ рд░реАрдбрд▓рд╛рдЗрди рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде PHP рдХреЛ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддреЗ рд╣реИрдВред рдпрд╣ рд╡рд╣ рд╣реИ рдЬреЛ рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рдореЛрдб рдореЗрдВ PHP рдХреЗ рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред рд╣рд╛рдВ, рдмрд┐рд▓рдХреБрд▓ рдРрд╕рд╛: рд░реАрдбрд▓рд╛рдЗрди рдЖрдкрдХреЗ PHP рдЕрд╕реЗрдВрдмрд▓реА рдореЗрдВ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреА рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдбреЗрдмрд┐рдпрди рд▓рд┐рдирдХреНрд╕ рдореЗрдВ, рдЖрдк рд╡рд┐рддрд░рдХ рдХреА рд▓рд╛рдЗрд╕реЗрдВрд╕рд┐рдВрдЧ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рдХрд╛рд░рдг рдЗрд╕ рд╕рдорд░реНрдерди рдХреЛ рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд░ рдкрд╛рдПрдВрдЧреЗред рдЗрд╕рдореЗрдВ рдмрд╕ php5-readline рдкреИрдХреЗрдЬ рдирд╣реАрдВ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, PHP рдХреЗ рд╕рднреА рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рдФрд░ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдЗрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ PHP рдХрдВрд╕реЛрд▓ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд░рд▓ рдФрд░ рдЕрдзрд┐рдХ "рдХрд╛рдиреВрдиреА" рддрд░реАрдХрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдЖрдкрдХрд╛ PHP рдорд╛рдирдХ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдЕрдкрдбреЗрдЯ рддрдВрддреНрд░ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕рдХреЗ рдмрд╛рдж рд╕реЗ PHP рдХреА рдЖрдХрд╕реНрдорд┐рдХ рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдкреИрдХреЗрдЬ рд╕рдВрдШрд░реНрд╖ рдХреЗ рд╕рд╛рде рднрд░рд╛ рд╣реИред

рддреБрд░рдВрдд рдПрдХ рдЖрд░рдХреНрд╖рдг рдХрд░реЗрдВ рдЬреЛ рдЙрдкрд░реЛрдХреНрдд рд╕рднреА рдбреЗрдмрд┐рдпрди рд╡реНрд╣реАрдЬрд╝реА рдХреЗ рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рд░ рд╕рдВрд╕реНрдХрд░рдг рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИред рдбреЗрдмрд┐рдпрди рдХреЗ рдЕрдЧрд▓реЗ, рдЕрд╕реНрдерд┐рд░ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ, рдпрд╣ рд╕рдорд░реНрдерди рд╡рд╛рдкрд╕ рд▓реМрдЯрд╛ рд╣реБрдЖ рд▓рдЧрддрд╛ рд╣реИред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдореИрдВрдиреЗ рдЦреБрдж рдЗрд╕рдХреА рдЬрд╛рдВрдЪ рдирд╣реАрдВ рдХреА, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рд╕рдВрдмрдВрдзрд┐рдд рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ php5-readline рдкреИрдХреЗрдЬ рдХреЛ рджреЗрдЦрд╛ рдФрд░ рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ рдХреЗ рд╕рдВрдмрдВрдзрд┐рдд рд╡рд┐рд╖рдпреЛрдВ рдореЗрдВ рдирд┐рд╢реНрдЪрд┐рдд рдирд┐рд╖реНрдХрд░реНрд╖ рджреЗрдЦреЗред рдпрд╣реА рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдЗрд╕реЗ рд╕рдордЭрд╛, рдбреЗрдмрд┐рдпрди рдЬреЗрд╕реА рдФрд░ рдкреАрдПрдЪрдкреА 5.5 рдореЗрдВ, рдпрд╣ рд╕рдорд░реНрдерди рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рд╣реЛрдЧрд╛ред

рд╡реНрд╣реАрдЬреА рдФрд░ PHP 5.4 рдкрд░ рд╡рд╛рдкрд╕ ...
рдХреБрдЫ рдЫреЛрдЯреЗ рд╕рдВрд╢реЛрдзрдиреЛрдВ рдХреЗ рд╕рд╛рде рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдЕрдиреНрдп рд▓рд┐рдирдХреНрд╕ рд╡рд┐рддрд░рдгреЛрдВ рдкрд░ рдХрд╛рдлреА рд▓рд╛рдЧреВ рд╣реИ, рд╕рд┐рджреНрдзрд╛рдВрдд рд╕рдорд╛рди рд╣реИред

рд╣рдо рд╕рдм рдХреБрдЫ рд░реВрдЯ рдХреЗ рддрд╣рдд рдХрд░рддреЗ рд╣реИрдВ рдпрд╛ рд╕реВрдбреЛ рдХрдорд╛рдВрдб рд╕реЗ рдкрд╣рд▓реЗ рдХрд░рддреЗ рд╣реИрдВред

1. рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рд╣рдореЗрдВ рдкреАрдПрдЪрдкреА рдФрд░ рд░реАрдбрд▓рд╛рдЗрди рдХреЗ рд▓рд┐рдП рджреЗрд╡ рдкреИрдХреЗрдЬ рдЪрд╛рд╣рд┐рдП
# рдПрдкреНрдЯреАрдЯреНрдпреВрдб php5-dev libedit-dev libreadline-dev рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ

рд╕рдВрдХреБрд▓ php, libedit, libreadline рдЕрдЧрд░ рдкрд╣рд▓реЗ рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рд╣реИ, рддреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╕рдВрд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

2. рдЕрдЧрд▓рд╛, рд╣рдореЗрдВ PHP рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрдд рдХреЛрдб рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╣рдо рдЙрдиреНрд╣реЗрдВ рдУрдПрд╕ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рд╕реЗ рд▓реЗрддреЗ рд╣реИрдВ
# apt-get source php5-cli


3. рд╣рдо рд╕рднреА PHP рдХрд╛ рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред рд╣рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдореЙрдбреНрдпреВрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдФрд░ рдЗрд╕реЗ рдЗрдХрдЯреНрдард╛ рдХрд░реЗрдВ
# рд╕реАрдбреА php5-5.4.4 / ext / readline /
# phpize
# ./configure
# рдмрдирд╛рдУ


4. рдПрдХ рдЦрд░рд╛рдмреА рд╣рдореЗрдВ рдпрд╣рд╛рдВ рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд░рд╣реА рд╣реИ: рдЬрдм рд╕рдВрдХрд▓рди рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЛ sapi.h рдирд╣реАрдВ рдорд┐рд▓реЗрдЧрд╛
# ln -s ../../sapi/
# рдмрдирд╛рдУ


5. рдмрд┐рд▓реНрдб рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкреВрд░рд╛ рд╣реБрдЖред рд╣рдо рдирд╡-рдирд┐рд░реНрдорд┐рдд readline.so рдореЙрдбреНрдпреВрд▓ рд▓реЗрддреЗ рд╣реИрдВ , рдЗрд╕реЗ рд╡рд░реНрддрдорд╛рди PHP рдХреЗ рдореЙрдбреНрдпреВрд▓ рдореЗрдВ рдбрд╛рд▓рддреЗ рд╣реИрдВ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╣реИрдВ

рдореЙрдбреНрдпреВрд▓:
# mcrypt.so рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдПрдВ | grep php
# cp рдореЙрдбреНрдпреВрд▓ / readline.so / usr / lib / php5 / 20100525 + lfs /
# chmod -x /usr/lib/php5/20100525+lfs/readline.so


рдпрд╣рд╛рдВ, рдЦреЛрдЬ рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдЙрд╕ рдкрде рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд╣рд╛рдВ PHP рдлрд╛рдЗрд▓реЗрдВ рдЭреВрда рдмреЛрд▓рддреА рд╣реИрдВ, mcrypt рдХреЗ рдЙрджрд╛рд╣рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЬреЛ PHP рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╕рдордп рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рд╣реЛрддрд╛ рд╣реИред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдХрдорд╛рди рдирд╣реАрдВ рд╣реИ, рддреЛ рдЕрдкрдиреЗ рдкрде рдХреЛ рдореЗрд░реЗ рд╕рд╛рде рд╕рд╛рджреГрд╢реНрдп рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░реЗрдВ

config:
# рдЧреВрдВрдЬ 'рд╡рд┐рд╕реНрддрд╛рд░ = readline.so'> /etc/php5/mods-available/readline.ini
# cd /etc/php5/cli/conf.d
# ln -s ../mods-available/readline.ini 20-readline.ini


рд╡рд╣ рд╕рдм рд╣реИред рдХрдВрд╕реЛрд▓ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред
# php -a
рдЗрдВрдЯрд░рдПрдХреНрдЯрд┐рд╡ рдореЛрдб рд╕рдХреНрд╖рдо рдХрд┐рдпрд╛ рдЧрдпрд╛

php>

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


All Articles