αααα»αα αα»αααΈααα’αΌ
αααα»ααααααΎαααααααααα αΆααΆαα
αααΎααααααΆααααααΉαααΆαααααΎααααΆαααααααααα·αααααΉαααααΌα ααααΌα
ααΆαααααα
ααΎαααΈααα α§αααααααααααααααα·ααΈαααααΆααα»ααααα·ααΆαααααΌαααΆααααααααΌαααΎααααΈα’αα»ααααΆα
/** @var string|null */
$a = foo();
/** @var ααααα’αααα $a */
α’αααΌ strpos($a, 'ααααΆααα½α');
/** @psalm-assert-if-true B$a */
αα»αααΆα isValidB(A $a): bool {
αααα‘αα $a α§ααΆα ααααα B && $a->isValid();
}
ααΎααααΈααααΎααααααααααααα·ααααααΆααα»αααααΆαααααα αΆαααααΆαααααΎα α§αααααααααΎααααΆαα Psalter ααααΌαααΆααααααααΌα αααααΆαααααααααα·ααΈαααα½α αα·α
αα
αααα»αααααα
αααα»ααααααΎαααααΈα
αα»ααααΆαααααΌαααΆαααααΎααααΆαααα αααααααΎαα»αααΆαααΌα ααΆ α’αααΌ, exec, αα½ααααα αΌα αα·αααααααΆα αα ααααα·ααΆααααααΌαααΆααααααΆααααΆαααα α αα αααααααα·ααααααααΌα ααΆ α’ααααα ααααα’αααααααααΆα SQL, HTML αα·αααΌαααα ααααα’αααααααααΆααααΆαααΆαααααααααααααααΆααααααΌαααΆααααααα·α αΆαααΆα αααααααααΆαααααΎα‘αΎαα’αα»ααααΆαα±ααα’ααααααααα’ααααααααΆαααΆαααΆαααααααααα αααα»αααΌααααααΆααα αααααΆααααααααααααΈαααααααα ααααα (XSS) α¬ααΆααααα½α SQL α
ααΎαααΈααααααααΆα’αΆα
ααααΌαααΆαααααααααΆαα
-
ααΆαααΆαααααα αΌα αααααα·ααΈα ααααα JIT ααΆαααααΎααααΆαααααααΉαααααΎα±αααααααΎαα‘αΎαααΌαααα·αααΆαα - ααΆαααΆαααα
αααααααα ααΈα αααααααααα»αααααααααααΈα α¬α αααΎα (α§ααΆα ααα βαα»αααΆαααΆααΆααα foo(Foo|Bar $input): int|float;β)α - ααΆαααΆαααα
αα»ααααααα (α αααΆααααααα) αααα’αα»ααααΆαα±ααα’αααα ααα·ααααααααααΆ (ααΌα ααΆααααααΆααααααα) αα ααααΆααααααα·αααααΎααΆααααααααααα Docblock α -
ααΆαααααααααααααααΈα class definitions α’αα»ααααΆαα±ααα’ααααααααα·ααααααα constructor αα·α propertiesα - αααααααααα‘αααααα·αααααΈ -
αα·αα·αααα . - ααααααααααΈ -
ααΆαααααΆ αααα’αΆα ααααΌαααΆαααααΎααΎααααΈαααααααΆααΎα’αα»ααααααα½ααααααΆαααΆααααααααααααααααααααααααΆα - ααΆααααα
ααααα·
ααα ααΎααααΈαααααααΆαααααΈααΎααααα -
αααααΈααααα ααΎααααΈαααααΎαααααα»αααα’αΆα ααααΌαααΆαααααααααα»αα’αα‘α»αααααααααΌαααααΆα (α§ααΆα αααααΎααααΈαααααΆαα»αααααΆαααααααΆααααααα·αα αΆαααΆα α) α -
α±ααΆαα αααααααΎαααααα "::class" αααααΆααααααα» (ααααααααααΆαα ααΉαααΆαα α get_class()) α -
α±ααΆαα αα·ααααααα αααα»ααααα»αα αΆααααααααΈααΎααααααααα·αααααΌαααΆαα αααααΆαααα ααΉαα’αααα -
α±ααΆαα αα»ααααααΆααααααααααΆααααΈααΆαα»α α»αααααααααα»ααααααΈαααΆαααΆαααααααα»αααΆαα - α
ααα»α
αααααΆααααααΈα
ααααα’αααα ααΎααααΈαααααα’ααααααααΆαααααααααααα’αααα α¬αα·αααααααααα’αΆα ααααααααα ααΆααααα’αααα (ααααα·ααΈααΆααααα __toString() ααΆα)α - αα»αααΆαααααΈα
str_contains() αααααΆ analogue ααΆαααααα strpos αααααΆαααααααααΆαααΎαα‘αΎαααααααα’αααααα ααααΌα ααΆαα»αααΆα str_starts_with() αα·α str_ends_with() αααααΆαααα·αα·αααααΎαααΆαααααΌαααααα ααΎα αα·αα α»ααααα ααααααααα’αααααα½αα - ααΆααααααααα»αααΆα
fdiv() αααβα’αα»ααααβααααα·ααααα·ααΆαβα ααβαααβαα·αβαααβααα α»αβαααβα ααβααΉαβααΌαααα -
ααΆαααααΆααααααΌα ααααα’ααααα αΌααα½ααααααα·ααααΆα α§ααΆα ααα αααααα 'echo "sum:" α $a + $b' ααααΌαααΆαααααααΆαααΈαα»αααΆααΆ 'echo ("sum:" . $a) + $b' α αΎααα αααα»α PHP 8 ααΉαααααΌαααΆαα αΆαααα»αααΆ 'echo "sum:" α ($a + $b)'α -
ααΉααααααΉα ααΆααα·αα·αααααΎαααααα·ααααα·ααΆαααααααα αα·ααααΈα α§ααΆα ααα αααααα "[] % [42]" αα·α "$object + 4" ααΉααααααΆαα±ααααΆαααα α»αα -
ααΆαα’αα»αααα αααα½ααααααααΆαααΆαααααααααΆααααααααΆααααααααΆαααααααααααΌα ααααΆααααα·αααααΌαααΆααααααΆαα ααΌααΆααααΆααααααααααααααΆα
ααααα: opennet.ru