PHP Π²Π΅ΡΡΠΈΠΈ 8.5 ΠΈ Π½ΠΎΠ²Π΅Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΎΠ΄ΠΈΠ½ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Ρ callable-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌΠΈ. ΠΠΏΠ΅ΡΠ°ΡΠΎΡ |>,
ΠΈΠ»ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠΈΠ·Π°ΡΠΈΠΈ, ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π² ΠΏΡΠ°Π²ΠΎΠΉ ΡΠ°ΡΡΠΈ callable-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Ρ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ,
ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ Π² Π½Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π»Π΅Π²ΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ Π²ΡΠ·ΡΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ. Π ΠΏΡΠ°Π²ΠΎΠΉ ΡΠ°ΡΡΠΈ
ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎΠ΅ Π² PHP callable-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅: ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ° Closure,
callable-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ°,
ΠΎΠ±ΡΠ΅ΠΊΡ, ΠΊΠ»Π°ΡΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ ΠΌΠ΅ΡΠΎΠ΄ __invoke(), ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ Π²ΡΠ·ΡΠ²Π°Π΅ΠΌΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ.
ΠΠ°ΠΆΠ΄ΡΠ΅ Π΄Π²Π΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½Ρ.
ΠΡΠΈΠΌΠ΅Ρ #1 ΠΠΏΠ΅ΡΠ°ΡΠΎΡ |>
<?php
$result = "ΠΡΠΈΠ²Π΅Ρ, ΠΌΠΈΡ!" |> strlen(...);
print $result, PHP_EOL;
$result = strlen("ΠΡΠΈΠ²Π΅Ρ, ΠΌΠΈΡ!");
print $result, PHP_EOL;Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ²Π΅Π΄ΡΠ½Π½ΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ°:
21 21
ΠΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠ½ΡΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ Ρ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΌ Π²ΡΠ·ΠΎΠ²ΠΎΠΌ Π±Π΅ΡΠΏΠΎΠ»Π΅Π·Π΅Π½, Π½ΠΎ ΠΏΡΠΈΠ½Π΅ΡΡΡ ΠΏΠΎΠ»ΡΠ·Ρ ΠΏΡΠΈ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΡΡ Π²ΡΠ·ΠΎΠ²Π°Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡΡΡ Π² ΡΠ΅ΠΏΠΎΡΠΊΡ. Π‘Π»Π΅Π΄ΡΡΡΠΈΠ΅ Π΄Π²Π° ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ° ΠΊΠΎΠ΄Π° ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½Ρ:
ΠΡΠΈΠΌΠ΅Ρ #2 Π¦Π΅ΠΏΠΎΡΠΊΠ° Π²ΡΠ·ΠΎΠ²ΠΎΠ² ΡΠ΅ΡΠ΅Π· ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ |>
<?php
$result = "PHP Rocks"
|> htmlentities(...)
|> str_split(...)
|> (fn($x) => array_map(strtoupper(...), $x))
|> (fn($x) => array_filter($x, fn($v) => $v != 'O'));
print_r($result);
$temp = "PHP Rocks";
$temp = htmlentities($temp);
$temp = str_split($temp);
$temp = array_map(strtoupper(...), $temp);
$temp = array_filter($temp, fn($v) => $v != 'O');
$result = $temp;
print_r($result);Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ²Π΅Π΄ΡΠ½Π½ΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ°:
Array
(
[0] => P
[1] => H
[2] => P
[3] =>
[4] => R
[6] => C
[7] => K
[8] => S
)
Array
(
[0] => P
[1] => H
[2] => P
[3] =>
[4] => R
[6] => C
[7] => K
[8] => S
)
Π Π»Π΅Π²ΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠ° ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, Π° Π² ΠΏΡΠ°Π²ΠΎΠΉ β Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎΠ΅ Π² PHP callable-Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Π°ΡΠ³ΡΠΌΠ΅Π½Ρ. Π€ΡΠ½ΠΊΡΠΈΠΈ Ρ Π΄Π²ΡΠΌΡ ΠΈΠ»ΠΈ Π±ΠΎΠ»ΡΡΠ΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΌΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ Π½Π΅ ΡΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΈ Π²ΡΠ·ΠΎΠ²ΡΡ ΠΎΡΠΈΠ±ΠΊΡ, ΠΊΠ°ΠΊ ΠΏΡΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΌ Π²ΡΠ·ΠΎΠ²Π΅ Ρ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΡΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ². Π ΠΏΡΠ°Π²ΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° Π½Π΅Π»ΡΠ·Ρ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅. PHP Π²ΡΠ±ΡΠΎΡΠΈΡ ΠΎΡΠΈΠ±ΠΊΡ Error, Π΅ΡΠ»ΠΈ Π² ΠΏΡΠ°Π²ΡΡ ΡΠ°ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° ΠΏΠ΅ΡΠ΅Π΄Π°Π»ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ·Π²Π°ΡΡ ΠΊΠ°ΠΊ ΡΡΠ½ΠΊΡΠΈΡ.
ΠΠ°ΠΌΠ΅ΡΠ°Π½ΠΈΠ΅:
Π‘ΡΡΠ΅Π»ΠΎΡΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π² ΠΏΡΠ°Π²ΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠΈΠ·Π°ΡΠΈΠΈ ΠΠΠ―ΠΠΠ’ΠΠΠ¬ΠΠ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π² ΠΊΡΡΠ³Π»ΡΡ ΡΠΊΠΎΠ±ΠΊΠ°Ρ , ΡΡΠΎΠ±Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠΉ Π΄Π²ΡΡΠΌΡΡΠ»Π΅Π½Π½ΠΎΡΡΠΈ, ΠΊΠ°ΠΊ Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅. ΠΡΠΈ Π½Π°ΡΡΡΠ΅Π½ΠΈΠΈ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ PHP Π²ΡΠ΄Π°ΡΡ ΡΠ°ΡΠ°Π»ΡΠ½ΡΡ ΠΎΡΠΈΠ±ΠΊΡ.