Π‘ΡΠ°ΡΡΡ
π ΠΠ»Π°Π²Π° 6. Π€ΡΠ½ΠΊΡΠΈΠΈ Π² PHP
ΠΠ³Π»Π°Π²Π»Π΅Π½ΠΈΠ΅
- π§ ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ
- π’ Π€ΡΠ½ΠΊΡΠΈΠΈ Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ
- β ΠΠ΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ²
- π§° ΠΠ½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ
- π§ ΠΠΎΠ·Π²ΡΠ°Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°
- π¦ Π Π°Π±ΠΎΡΠ° Ρ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌΠΈ Π² ΡΡΠ½ΠΊΡΠΈΡΡ
- β οΈ ΠΠ°ΠΆΠ½ΠΎ: ΠΎΠ±Π»Π°ΡΡΡ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ (scope)
Π€ΡΠ½ΠΊΡΠΈΡ — ΡΡΠΎ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΡΠΉ Π±Π»ΠΎΠΊ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ·Π²Π°ΡΡ Π² Π»ΡΠ±ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΡΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΈΠ·Π±Π΅Π³Π°ΡΡ ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ΠΈΠΉ ΠΈ Π΄Π΅Π»Π°ΡΡ ΠΊΠΎΠ΄ ΠΏΠΎΠ½ΡΡΠ½ΡΠΌ.
π§ ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ
function ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΠΈΠ΅() {
echo "ΠΡΠΈΠ²Π΅Ρ, ΠΌΠΈΡ!";
}
ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΠΈΠ΅(); // Π²ΡΠ·ΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΈ
π’ Π€ΡΠ½ΠΊΡΠΈΠΈ Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ
function ΠΏΡΠΈΠ²Π΅Ρ($ΠΈΠΌΡ) {
echo "ΠΡΠΈΠ²Π΅Ρ, $ΠΈΠΌΡ!";
}
ΠΏΡΠΈΠ²Π΅Ρ("ΠΠ½Π½Π°"); // ΠΡΠΈΠ²Π΅Ρ, ΠΠ½Π½Π°!
β ΠΠ΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ²
function ΡΡΠΌΠΌΠ°($a, $b) {
return $a + $b;
}
$ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ = ΡΡΠΌΠΌΠ°(3, 5);
echo $ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ; // 8
π§° ΠΠ½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ
function ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΠΈΠ΅($ΠΈΠΌΡ = "ΠΠΎΡΡΡ") {
echo "ΠΡΠΈΠ²Π΅Ρ, $ΠΈΠΌΡ!";
}
ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΠΈΠ΅(); // ΠΡΠΈΠ²Π΅Ρ, ΠΠΎΡΡΡ!
ΠΏΡΠΈΠ²Π΅ΡΡΡΠ²ΠΈΠ΅("ΠΠ²Π°Π½"); // ΠΡΠΈΠ²Π΅Ρ, ΠΠ²Π°Π½!
π§ ΠΠΎΠ·Π²ΡΠ°Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ return
ΠΌΠΎΠΆΠ½ΠΎ Π²Π΅ΡΠ½ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅:
function ΠΊΠ²Π°Π΄ΡΠ°Ρ($ΡΠΈΡΠ»ΠΎ) {
return $ΡΠΈΡΠ»ΠΎ * $ΡΠΈΡΠ»ΠΎ;
}
echo ΠΊΠ²Π°Π΄ΡΠ°Ρ(4); // 16
π¦ Π Π°Π±ΠΎΡΠ° Ρ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌΠΈ Π² ΡΡΠ½ΠΊΡΠΈΡΡ
function ΠΏΠΎΠΊΠ°Π·Π°ΡΡΠΠ°ΡΡΠΈΠ²($ΠΌΠ°ΡΡΠΈΠ²) {
foreach ($ΠΌΠ°ΡΡΠΈΠ² as $ΡΠ»Π΅ΠΌΠ΅Π½Ρ) {
echo $ΡΠ»Π΅ΠΌΠ΅Π½Ρ . "<br>";
}
}
$ΡΡΡΠΊΡΡ = ["ΡΠ±Π»ΠΎΠΊΠΎ", "Π±Π°Π½Π°Π½", "Π³ΡΡΡΠ°"];
ΠΏΠΎΠΊΠ°Π·Π°ΡΡΠΠ°ΡΡΠΈΠ²($ΡΡΡΠΊΡΡ);
β οΈ ΠΠ°ΠΆΠ½ΠΎ: ΠΎΠ±Π»Π°ΡΡΡ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΠΈ (scope)
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π²Π½ΡΡΡΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π΅ Π²ΠΈΠ΄Π½Ρ ΡΠ½Π°ΡΡΠΆΠΈ:
function ΡΠ΅ΡΡ() {
$Π²Π½ΡΡΡΠΈ = "Ρ ΡΡΡ";
}
echo $Π²Π½ΡΡΡΠΈ; // ΠΠ¨ΠΠΠΠ!
Π§ΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅:
$ΡΠΈΡΠ»ΠΎ = 5;
function ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ() {
global $ΡΠΈΡΠ»ΠΎ;
$ΡΠΈΡΠ»ΠΎ++;
}
ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ();
echo $ΡΠΈΡΠ»ΠΎ; // 6