Kotlin | ΠΠ°ΡΡΠΈΠ²Ρ
ΠΠ°ΡΡΠΈΠ²Ρ
ΠΠΎΡΠ»Π΅Π΄Π½Π΅Π΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅: 24.05.2021
ΠΠ»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ Π½Π°Π±ΠΎΡΠ° Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π² Kotlin, ΠΊΠ°ΠΊ ΠΈ Π² Π΄ΡΡΠ³ΠΈΡ ΡΠ·ΡΠΊΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ²Ρ. ΠΡΠΈ ΡΡΠΎΠΌ ΠΌΠ°ΡΡΠΈΠ² ΠΌΠΎΠΆΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ Π΄Π°Π½Π½ΡΠ΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠΎΠ³ΠΎ ΠΆΠ΅ ΡΠΈΠΏΠ°. Π Kotlin ΠΌΠ°ΡΡΠΈΠ²Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ ΡΠΈΠΏΠΎΠΌ Array.
ΠΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΏΠΎΡΠ»Π΅ ΡΠΈΠΏΠ° Array
Π² ΡΠ³Π»ΠΎΠ²ΡΡ
ΡΠΊΠΎΠ±ΠΊΠ°Ρ
Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΊΠ°ΠΊΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΌΠΎΠ³ΡΡ Ρ
ΡΠ°Π½ΠΈΡΡΡΡ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ,
ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΠΌ ΠΌΠ°ΡΡΠΈΠ² ΡΠ΅Π»ΡΡ
ΡΠΈΡΠ΅Π»:
val numbers: Array<Int>
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ arrayOf() ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ Π½Π°Π±ΠΎΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ ΡΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΌΠ°ΡΡΠΈΠ²:
val numbers: Array<Int> = arrayOf(1, 2, 3, 4, 5)
Π’ΠΎ Π΅ΡΡΡ Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ 5 ΡΠΈΡΠ΅Π» ΠΎΡ 1 Π΄ΠΎ 5.
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ ΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅. ΠΠ½Π΄Π΅ΠΊΡΠ°ΡΠΈΡ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Ρ Π½ΡΠ»Ρ, ΡΠΎ Π΅ΡΡΡ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π±ΡΠ΄Π΅Ρ ΠΈΠΌΠ΅ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ 0. ΠΠ½Π΄Π΅ΠΊΡ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π² ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΡΡ ΡΠΊΠΎΠ±ΠΊΠ°Ρ :
val numbers: Array<Int> = arrayOf(1, 2, 3, 4, 5) val n = numbers[1] // ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ Π²ΡΠΎΡΠΎΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ n=2 numbers[2] = 7 // ΠΏΠ΅ΡΠ΅ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ ΡΡΠ΅ΡΠΈΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ println("numbers[2] = ${numbers[2]}") // numbers[2] = 7
Π’Π°ΠΊΠΆΠ΅ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ² Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ:
val numbers = Array(3, {5}) // [5, 5, 5]
ΠΠ΄Π΅ΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΠΊΠ»Π°ΡΡΠ° Array. Π ΡΡΠΎΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ Π΄Π²Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°. ΠΠ΅ΡΠ²ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π±ΡΠ΄Π΅Ρ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅. Π Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ 3 ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°. ΠΡΠΎΡΠΎΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π°. ΠΠ½ΠΎ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΈΠ³ΡΡΠ½ΡΠ΅ ΡΠΊΠΎΠ±ΠΊΠΈ. Π Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π² ΡΠΈΠ³ΡΡΠ½ΡΡ ΡΠΊΠΎΠ±ΠΊΠ°Ρ ΡΡΠΎΠΈΡ ΡΠΈΡΠ»ΠΎ 5, ΡΠΎ Π΅ΡΡΡ Π²ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° Π±ΡΠ΄ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΈΡΠ»ΠΎ 5. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΌΠ°ΡΡΠΈΠ² Π±ΡΠ΄Π΅Ρ ΡΠΎΡΡΠΎΡΡΡ ΠΈΠ· ΡΡΠ΅Ρ ΠΏΡΡΠ΅ΡΠΎΠΊ.
ΠΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠΎΠ·Π΄Π°Π΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π°, ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠΌ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
var i = 1; val numbers = Array(3, { i++ * 2}) // [2, 4, 6]
Π Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΌΠ°ΡΡΠΈΠ²Π° ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠΌ ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ i Π½Π° 2. ΠΡΠΈ ΡΡΠΎΠΌ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠΈ ΠΊ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½ΠΎΠΉ i Π΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡΡ.
ΠΠ΅ΡΠ΅Π±ΠΎΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ²
ΠΠ»Ρ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ° ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΡΠΈΠΊΠ» for:
fun main() { val numbers = arrayOf(1, 2, 3, 4, 5) for(number in numbers){ print("$number \t") } }
Π Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ numbers ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠ°ΡΡΠΈΠ² ΡΠΈΡΠ΅Π». ΠΡΠΈ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ΅ ΡΡΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° Π² ΡΠΈΠΊΠ»Π΅ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π΅Π³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΎΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ
,
Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΡΠΎΡΠΎΠΉ, ΠΊ ΠΏΡΠΈΠΌΠ΅ΡΡ, ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ²Π΅ΡΡΠΈ Π½Π° ΠΊΠΎΠ½ΡΠΎΠ»Ρ. ΠΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΠΉ Π²ΡΠ²ΠΎΠ΄ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ:
ΠΠΎΠ΄ΠΎΠ±Π½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π±ΠΈΡΠ°ΡΡ ΠΌΠ°ΡΡΠΈΠ²Ρ ΠΈ Π΄ΡΡΠ³ΠΈΡ ΡΠΈΠΏΠΎΠ²:
fun main() { val people = arrayOf("Tom", "Sam", "Bob") for(person in people){ print("$person \t") } }
ΠΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΠΉ Π²ΡΠ²ΠΎΠ΄ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ:
ΠΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠΈΠΏΡ ΡΠΈΠΊΠ»ΠΎΠ² Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ° ΠΌΠ°ΡΡΠΈΠ²Π°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΠΈΠΊΠ» while
:
fun main() { val people = arrayOf("Tom", "Sam", "Bob") var i = 0 while( i in people.indices){ println(people[i]) i++; } }
ΠΠ΄Π΅ΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ i
, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΌΠ°ΡΡΠΈΠ²Π°. Π£ ΠΌΠ°ΡΡΠΈΠ²Π° Π΅ΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ indices, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π½Π°Π±ΠΎΡ Π²ΡΠ΅Ρ
ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ².
Π Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ i in people.indices
Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ true, Π΅ΡΠ»ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ i Π²Ρ
ΠΎΠ΄ΠΈΡ Π² Π½Π°Π±ΠΎΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π°.
Π ΡΠ°ΠΌΠΎΠΌ ΡΠΈΠΊΠ»Π΅ ΠΏΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΎΠ±Π°ΡΠ°Π΅ΠΌΡΡ ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π°: println(people[i])
. Π Π·Π°ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄ΠΈΠΌ ΠΊ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ, ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Ρ ΡΡΠ΅ΡΡΠΈΠΊ: i++
.
Π’ΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅ ΠΌΡ ΠΌΠΎΠ³Π»ΠΈ Π½Π°ΠΏΠΈΡΠ°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΈΠΊΠ»Π° for:
for (i in people.indices) { println(people[i]) }
ΠΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π°Π»ΠΈΡΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° Π² ΠΌΠ°ΡΡΠΈΠ²Π΅
ΠΠ°ΠΊ ΠΈ Π² ΡΠ»ΡΡΠ°Π΅ Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π½Π°Π»ΠΈΡΠΈΠ΅ ΠΈΠ»ΠΈ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² in ΠΈ !in:
val numbers: Array<Int> = arrayOf(1, 2, 3, 4, 5) println(4 in numbers) // true println(2 !in numbers) // false
ΠΠ°ΡΡΠΈΠ²Ρ Π΄Π»Ρ Π±Π°Π·ΠΎΠ²ΡΡ ΡΠΈΠΏΠΎΠ²
ΠΠ»Ρ ΡΠΏΡΠΎΡΠ΅Π½ΠΈΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π° Π² Kotlin ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠΈΠΏΡ BooleanArray, ByteArray, ShortArray, IntArray, LongArray, CharArray, FloatArray ΠΈ DoubleArray,
ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ²Ρ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ
ΡΠΈΠΏΠΎΠ². ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠΈΠΏ IntArray
ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΠΌΠ°ΡΡΠΈΠ² ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²
, Π° DoubleArray
— ΠΌΠ°ΡΡΠΈΠ² ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Double
:
val numbers: IntArray = intArrayOf(1, 2, 3, 4, 5) val doubles: DoubleArray = doubleArrayOf(2.4, 4.5, 1.2)
ΠΠ»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ
Π΄Π»Ρ ΡΡΠΈΡ
ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π°ΡΠΈΠ½Π°ΡΡΡΡ Π½Π° Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΡΠΈΠΏΠ° Π² Π½ΠΈΠΆΠ½Π΅ΠΌ ΡΠ΅Π³ΠΈΡΡΡΠ΅, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,
int
, ΠΈ Π·Π°ΡΠ΅ΠΌ ΠΈΠ΄Π΅Ρ ArrayOf
.
ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ Π΄Π»Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΊΠ»Π°ΡΡΠ°:
val numbers = IntArray(3, {5}) val doubles = DoubleArray(3, {1.5})
ΠΠ²ΡΡ ΠΌΠ΅ΡΠ½ΡΠ΅ ΠΌΠ°ΡΡΠΈΠ²Ρ
ΠΡΡΠ΅ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π»ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΌΠ΅ΡΠ½ΡΠ΅ ΠΌΠ°ΡΡΠΈΠ²Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΡΠ΄Π° ΠΈΠ»ΠΈ ΡΡΡΠΎΠΊΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ. ΠΠΎ ΠΊΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅ΡΠ½ΡΠ΅ ΠΌΠ°ΡΡΠΈΠ²Ρ. Π ΠΏΡΠΈΠΌΠ΅ΡΡ, Π²ΠΎΠ·ΡΠΌΠ΅ΠΌ Π΄Π²ΡΡ ΠΌΠ΅ΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² — ΡΠΎ Π΅ΡΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΌΠ°ΡΡΠΈΠ², ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΡΠ°ΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠΌ. ΠΠ²ΡΡ ΠΌΠ΅ΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² Π΅ΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΡΡ Π² Π²ΠΈΠ΄Π΅ ΡΠ°Π±Π»ΠΈΡΡ, Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄Π°Ρ ΡΡΡΠΎΠΊΠ° — ΡΡΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ², Π° ΡΡΠ΅ΠΉΠΊΠΈ ΡΡΡΠΎΠΊΠΈ — ΡΡΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°.
ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π΄Π²ΡΡ ΠΌΠ΅ΡΠ½ΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² ΠΌΠ΅Π½Π΅Π΅ ΠΈΠ½ΡΡΠΈΡΠΈΠ²Π½ΠΎ ΠΏΠΎΠ½ΡΡΠ½ΠΎ ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ·ΡΠ²Π°ΡΡ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π²ΡΡ ΠΌΠ΅ΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² ΡΠΈΡΠ΅Π»:
val table: Array<Array<Int>> = Array(3, { Array(5, {0}) })
Π Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π΄Π²ΡΡ ΠΌΠ΅ΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² Π±ΡΠ΄Π΅Ρ ΠΈΠΌΠ΅ΡΡ ΡΡΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° — ΡΡΠΈ ΡΡΡΠΎΠΊΠΈ. ΠΠ°ΠΆΠ΄Π°Ρ ΡΡΡΠΎΠΊΠ° Π±ΡΠ΄Π΅Ρ ΠΈΠΌΠ΅ΡΡ ΠΏΠΎ ΠΏΡΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΡΠ°Π²Π΅Π½ 0.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ ΠΏΠΎΠ΄ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌ Π² ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΌ ΠΌΠ°ΡΡΠΈΠ²Π΅, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΏΠ΅ΡΠ΅ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ:
val table = Array(3, { Array(3, {0}) }) table[0] = arrayOf(1, 2, 3) // ΠΏΠ΅ΡΠ²Π°Ρ ΡΡΡΠΎΠΊΠ° ΡΠ°Π±Π»ΠΈΡΡ table[1] = arrayOf(4, 5, 6) // Π²ΡΠΎΡΠ°Ρ ΡΡΡΠΎΠΊΠ° ΡΠ°Π±Π»ΠΈΡΡ table[2] = arrayOf(7, 8, 9) // ΡΡΠ΅ΡΡΡ ΡΡΡΠΎΠΊΠ° ΡΠ°Π±Π»ΠΈΡΡ
ΠΠ»Ρ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌ ΠΏΠΎΠ΄ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² Π΄Π²ΡΡ ΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡ Π΄Π²Π° ΠΈΠ½Π΄Π΅ΠΊΡΠ°. ΠΠΎ ΠΏΠ΅ΡΠ²ΠΎΠΌΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΈΠ΄Π΅Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ, Π° ΠΏΠΎ Π²ΡΠΎΡΠΎΠΌΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ — ΡΡΠΎΠ»Π±ΡΠ° Π² ΡΠ°ΠΌΠΊΠ°Ρ ΡΡΠΎΠΉ ΡΡΡΠΎΠΊΠΈ:
val table = Array(3, { Array(3, {0}) }) table[0][1] = 6 // Π²ΡΠΎΡΠΎΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ val n = table[0][1] // n = 6
ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ Π΄Π²Π° ΡΠΈΠΊΠ»Π°, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π±ΠΈΡΠ°ΡΡ Π΄Π²ΡΡ ΠΌΠ΅ΡΠ½ΡΠ΅ ΠΌΠ°ΡΡΠΈΠ²Ρ:
fun main() { val table: Array<Array<Int>> = Array(3, { Array(3, {0}) }) table[0] = arrayOf(1, 2, 3) table[1] = arrayOf(4, 5, 6) table[2] = arrayOf(7, 8, 9) for(row in table){ for(cell in row){ print("$cell \t") } println() } }
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΡΠΈΠΊΠ»Π° for(row in table)
ΠΏΡΠΎΠ±Π΅Π³Π°Π΅ΠΌΡΡ ΠΏΠΎ Π²ΡΠ΅ΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌ Π΄Π²ΡΡ
ΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°, ΡΠΎ Π΅ΡΡΡ ΠΏΠΎ ΡΡΡΠΎΠΊΠ°ΠΌ ΡΠ°Π±Π»ΠΈΡΡ.
ΠΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π΄Π²ΡΡ
ΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° ΡΠ°ΠΌ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠ°ΡΡΠΈΠ², ΠΏΠΎΡΡΠΎΠΌΡ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡΠΎΠ±Π΅ΠΆΠ°ΡΡΡΡ ΠΏΠΎ ΡΡΠΎΠΌΡ ΠΌΠ°ΡΡΠΈΠ²Ρ ΠΈ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ· Π½Π΅Π³ΠΎ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ,
ΠΊΠΎΡΠΎΡΡΠ΅ Π² Π½Π΅ΠΌ Ρ
ΡΠ°Π½ΡΡΡΡ. Π ΠΈΡΠΎΠ³Π΅ Π½Π° ΠΊΠΎΠ½ΡΠΎΠ»Ρ Π±ΡΠ΄Π΅Ρ Π²ΡΠ²Π΅Π΄Π΅Π½ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
Π‘ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² — PHP: ΠΠ°ΡΡΠΈΠ²Ρ
Π‘ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² β ΡΠ°ΠΌΠ°Ρ Π±Π°Π·ΠΎΠ²Π°Ρ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈΡΠ΅ΡΠΊΠ°Ρ Π·Π°Π΄Π°ΡΠ°, ΠΊΠΎΡΠΎΡΡΡ Π½Π΅ΡΠ΅Π΄ΠΊΠΎ ΡΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡΡ . Π‘ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, Π² ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ ΠΌΠ°ΡΡΠΈΠ²Ρ ΡΠΎΡΡΠΈΡΡΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠΆΠ΅ Π³ΠΎΡΠΎΠ²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ. Π’ΠΎΠ³Π΄Π° Π΄Π»Ρ ΡΠ΅Π³ΠΎ Π·Π°Π΄Π°ΡΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ? ΠΠ±ΡΡΠ½ΠΎ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΡΡΡΠΈΠΉ Ρ ΠΎΡΠ΅Ρ ΡΠ·Π½Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
- ΠΠ°ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²Ρ Π²ΠΎΠΎΠ±ΡΠ΅ Π² ΠΊΡΡΡΠ΅ ΠΎ ΡΡΡΠ΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ².
- Π‘ΠΏΠΎΡΠΎΠ±Π½Ρ Π»ΠΈ Π²Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°ΡΡ.
- ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π²Π°ΡΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΌΡΡΠ»Π΅Π½ΠΈΠ΅.
ΠΠ½Π°Π½ΠΈΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ² Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π²Π»ΠΈΡΠ΅Ρ Π½Π° ΡΠΎ, ΠΊΠ°ΠΊ Π²Ρ Π΄ΡΠΌΠ°Π΅ΡΠ΅ ΠΈ Π½Π°ΡΠΊΠΎΠ»ΡΠΊΠΎ Π±ΡΡΡΡΠΎ ΡΠΎΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΠ΅. Π Ρ ΠΎΡΡ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π·Π½Π°ΡΡ Π²ΡΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ, Π½ΡΠΆΠ½ΠΎ Ρ ΠΎΡΡ Π±Ρ ΠΈΠΌΠ΅ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎ ΡΠ°ΠΌΡΡ ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΠΈ Π² ΠΈΠ΄Π΅Π°Π»Π΅ ΡΠΌΠ΅ΡΡ ΠΈΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ. Π Π½Π°ΡΠ΅ΠΌ ΡΠΏΠΈΡΠΊΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΠΌΡΡ ΠΊΠ½ΠΈΠ³ Π΅ΡΡΡ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ ΠΎΠ΄Π½Π° ΠΊΠ½ΠΈΠ³Π°, ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΏΠΎΡΠ²ΡΡΡΠ½Π½Π°Ρ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ°ΠΌ.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π ΠΎΠ±Π΅ΡΡ ΠΠ°ΡΡΠΈΠ½ (Π°Π²ΡΠΎΡΠΈΡΠ΅ΡΠ½ΡΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ, ΠΏΠΎ ΠΊΠ½ΠΈΠ³Π°ΠΌ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΡΠΈΡΡΡ Π²Π΅ΡΡ ΠΌΠΈΡ) Π² ΡΠ²ΠΎΠ΅ΠΉ ΠΊΠ½ΠΈΠ³Π΅ Β«ΠΠ΄Π΅Π°Π»ΡΠ½ΡΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΒ» ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π΅ ΠΠ°ΡΠ° β ΠΏΠΎΠ½ΡΡΠΈΠΈ, Π²Π·ΡΡΠΎΠΌ ΠΈΠ· Π±ΠΎΠ΅Π²ΡΡ ΠΈΡΠΊΡΡΡΡΠ².
ΠΡΠΈΠ½ΡΠΈΠΏ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ Π±ΠΎΠ΅Π²ΠΎΠ³ΠΎ ΠΈΡΠΊΡΡΡΡΠ²Π° Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠ°ΡΠ° ΡΠΎΡΡΠΎΠΈΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΏΠΎΠ²ΡΠΎΡΡΡ ΠΊΠ°ΡΠ° ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡΡΡΡΡΠΈ ΡΠ°Π·, ΠΏΡΠ°ΠΊΡΠΈΠΊ Π±ΠΎΠ΅Π²ΠΎΠ³ΠΎ ΠΈΡΠΊΡΡΡΡΠ²Π° ΠΏΡΠΈΡΡΠ°Π΅Ρ ΡΠ²ΠΎΡ ΡΠ΅Π»ΠΎ ΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠ³ΠΎ ΡΠΎΠ΄Π° Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡΠΌ, Π²ΡΠ²ΠΎΠ΄Ρ ΠΈΡ Π½Π° Π±Π΅ΡΡΠΎΠ·Π½Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΡΡΠΎΠ²Π΅Π½Ρ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΏΠΎΠΏΠ°Π΄Π°Ρ Π² Π±ΠΎΠ΅Π²ΡΡ ΡΠΈΡΡΠ°ΡΠΈΡ, ΡΠ΅Π»ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Β«ΡΠ°ΠΌΠΎΒ» Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠ΅ΡΠ»Π΅ΠΊΡΠΎΠ², Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΡ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡΠ°ΡΠ½ΡΠΌ ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΊΠ°ΡΠ°. Π’Π°ΠΊΠΆΠ΅ ΡΡΠΈΡΠ°Π΅ΡΡΡ, ΡΡΠΎ ΠΊΠ°ΡΠ° ΠΎΠ±Π»Π°Π΄Π°ΡΡ ΠΌΠ΅Π΄ΠΈΡΠ°ΡΠΈΠ²Π½ΡΠΌ Π²ΠΎΠ·Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ΠΌ.
Π ΠΎΠ±Π΅ΡΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅Ρ Π²ΡΠ΅ΠΌΡ ΠΎΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΠ΅ΡΠ°ΡΡ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π·Π°Π΄Π°ΡΠΊΠΈ Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠ°Π½ΠΈΡ ΡΠΎΡΠΌΡ. ΠΡΠ° ΡΠ΅ΠΌΠ° ΡΡΠ°Π»Π° Π½Π°ΡΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΠΉ, ΡΡΠΎ Π΅ΡΠ»ΠΈ Π·Π°Π³ΡΠ³Π»ΠΈΡΡ php github kata
, ΡΠΎ Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² Ρ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΌΠΈ Π·Π°Π΄Π°ΡΠΊΠ°ΠΌΠΈ.
Π‘ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ°
Π‘ΠΏΠΎΡΠΎΠ±ΠΎΠ² ΡΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ² Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ. Π‘Π°ΠΌΡΠΉ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΉ Π΄Π»Ρ ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ β ΠΏΡΠ·ΡΡΡΠΊΠΎΠ²Π°Ρ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° (bubble sort).
ΠΠ»Π³ΠΎΡΠΈΡΠΌ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠΈΡ ΡΡ ΠΏΡΠΎΡ ΠΎΠ΄ΠΎΠ² ΠΏΠΎ ΡΠΎΡΡΠΈΡΡΠ΅ΠΌΠΎΠΌΡ ΠΌΠ°ΡΡΠΈΠ²Ρ. ΠΠ° ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΏΡΠΎΡ ΠΎΠ΄ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΡΠ°Π²Π½ΠΈΠ²Π°ΡΡΡΡ ΠΏΠΎΠΏΠ°ΡΠ½ΠΎ ΠΈ, Π΅ΡΠ»ΠΈ ΠΏΠΎΡΡΠ΄ΠΎΠΊ Π² ΠΏΠ°ΡΠ΅ Π½Π΅Π²Π΅ΡΠ½ΡΠΉ, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΎΠ±ΠΌΠ΅Π½ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ². ΠΡΠΎΡ ΠΎΠ΄Ρ ΠΏΠΎ ΠΌΠ°ΡΡΠΈΠ²Ρ ΠΏΠΎΠ²ΡΠΎΡΡΡΡΡΡ N-1 ΡΠ°Π· ΠΈΠ»ΠΈ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° Π½Π° ΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎΠΌ ΠΏΡΠΎΡ ΠΎΠ΄Π΅ Π½Π΅ ΠΎΠΊΠ°ΠΆΠ΅ΡΡΡ, ΡΡΠΎ ΠΎΠ±ΠΌΠ΅Π½Ρ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π½ΡΠΆΠ½Ρ, ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ β ΠΌΠ°ΡΡΠΈΠ² ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½. ΠΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΡΠΎΡ ΠΎΠ΄Π΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° ΠΏΠΎ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΌΡ ΡΠΈΠΊΠ»Ρ, ΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎΠΉ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠΈΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΌΠ°ΡΡΠΈΠ²Π° ΡΡΠ°Π²ΠΈΡΡΡ Π½Π° ΡΠ²ΠΎΡ ΠΌΠ΅ΡΡΠΎ Π² ΠΊΠΎΠ½ΡΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° ΡΡΠ΄ΠΎΠΌ Ρ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΌ Β«Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠΈΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠΌΒ», Π° Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠΈΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°Π΅ΡΡΡ Π½Π° ΠΎΠ΄Π½Ρ ΠΏΠΎΠ·ΠΈΡΠΈΡ ΠΊ Π½Π°ΡΠ°Π»Ρ ΠΌΠ°ΡΡΠΈΠ²Π° (Β«Π²ΡΠΏΠ»ΡΠ²Π°Π΅ΡΒ» Π΄ΠΎ Π½ΡΠΆΠ½ΠΎΠΉ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ, ΠΊΠ°ΠΊ ΠΏΡΠ·ΡΡΡΠΊ Π² Π²ΠΎΠ΄Π΅. ΠΡΡΡΠ΄Π° ΠΈ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ°).
Π ΠΈΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΡΠ΅ΡΠ²ΠΈΡΡ, Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·ΠΈΡΡΡΡΠΈΠ΅ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ, ΡΡΠΎ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
<!— end list —>
Kotlin. Π¦ΠΈΠΊΠ»Ρ for, while, do-while, forEach, repeat()
Π‘ΡΠ°ΡΡΡ ΠΏΡΠΎΠΏΠ»Π°ΡΠ΅Π½Π° ΠΊΠΎΡΠΊΠ°ΠΌΠΈ — Π²ΡΠ΅ΠΌΠΈΡΠ½ΠΎ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠΌΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠΌΠΈ ΠΊΠΎΡΡΡ.
ΠΡΠ»ΠΈ ΡΡΠ°ΡΡΡ Π²Π°ΠΌ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»Π°ΡΡ, ΡΠΎ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠ°ΡΡ ΠΏΡΠΎΠ΅ΠΊΡ.
for
Π¦ΠΈΠΊΠ» for Π² Kotlin ΠΈΠΌΠ΅Π΅Ρ Π΄ΡΡΠ³ΠΎΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ. ΠΡΠΈΠΌΠ΅Π½ΠΈΠΌ Π² ΡΠ΅Ρ ΡΠ»ΡΡΠ°ΡΡ , ΠΊΠΎΠ³Π΄Π° Π΅ΡΡΡ ΠΈΡΠ΅ΡΠ°ΡΠΎΡ — ΠΌΠ°ΡΡΠΈΠ², Map ΠΈ Ρ.Π΄. Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ, ΠΊΠΎΠ³Π΄Π° Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΎΠ±Π΅ΠΆΠ°ΡΡΡΡ ΠΏΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡ ΡΠΈΡΠ»Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ.
for(i in 1..5){
println(i)
}
ΠΠΏΠ΅ΡΠ°ΡΠΎΡ in ΠΈ Π΅Π³ΠΎ Π±ΡΠ°Ρ !in ΠΏΡΠΎΠ²Π΅ΡΡΡΡ Π²Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ Π²Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½.
Π Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΈ 1..5 ΠΌΡ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΎΡ 1 Π΄ΠΎ 5 (ΠΏΡΡΡ Π²Ρ ΠΎΠ΄ΠΈΡ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½). ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅
1
2
3
4
5
ΠΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ.
val range = 1..5
for(i in range){
println("ΠΠ»Π΅ΠΌΠ΅Π½Ρ $i")
}
ΠΠΌΠ΅ΡΡΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ².
val cats = arrayListOf<String>()
cats.add("ΠΡΡΠ·ΠΈΠΊ")
cats.add("ΠΠ°ΡΡΠΊΠ°")
cats.add("ΠΠ°ΡΡΠΈΠΊ")
for(cat in cats){
println("ΠΠΎΡ $cat")
}
// Π Π΅Π·ΡΠ»ΡΡΠ°Ρ
ΠΠΎΡ ΠΡΡΠ·ΠΈΠΊ
ΠΠΎΡ ΠΠ°ΡΡΠΊΠ°
ΠΠΎΡ ΠΠ°ΡΡΠΈΠΊ
ΠΡΠΎΡ ΠΆΠ΅ ΠΏΡΠΈΠΌΠ΅Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠ°ΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ:
for (index in cats.indices){
println("ΠΠΎΡ ${cats[index]}")
}
ΠΡΠΎΠ²Π΅ΡΠΈΠΌ, ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ ΡΠΈΠΌΠ²ΠΎΠ» Π½Π΅ ΡΠΈΡΡΠΎΠΉ.
fun isNotDigit(c: Char) = c !in '0'..'9'
println(isNotDigit('3')) // false, ΡΡΠΎ Π²ΡΡ-ΡΠ°ΠΊΠΈ ΡΠΈΡΡΠ°
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ index, element ΠΈ withIndex() ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΈ Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅.
val cats = arrayListOf("Barsik", "Murzik", "Vaska")
for( (index, element) in cats.withIndex()){
println("$index: $element")
}
ΠΠΎΠ»ΡΡΠΈΠΌ.
0: ΠΡΡΠ·ΠΈΠΊ
1: ΠΠ°ΡΡΠΊΠ°
2: ΠΠ°ΡΡΠΈΠΊ
Π ΠΊΠ°ΠΊ Π±ΡΡΡ Ρ Π²Π°ΡΠΈΠ°Π½ΡΠ°ΠΌΠΈ, ΠΊΠΎΠ³Π΄Π° Π½ΡΠΆΠ½ΠΎ ΡΡΡΡΡΠΈΠΊ Π½Π΅ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°ΡΡ Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡΡ, Π° ΡΠΌΠ΅Π½ΡΡΠ°ΡΡ Π½Π° 2? ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΠ»ΠΎΠ²Π° downTo ΠΈ step.
for(i in 10 downTo 1 step 2){
print("$i ")
}
// Π²ΡΠ²ΠΎΠ΄ΠΈΡ: 10 8 6 4 2
ΠΠ΅Π· ΡΠΊΠ°Π·Π°Π½ΠΈΡ ΡΠ°Π³Π° Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π±ΡΠ΄ΡΡ ΡΠΌΠ΅Π½ΡΡΠ°ΡΡΡΡ Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡΡ.
for(i in 10 downTo 1){
print("$i ")
}
// 10 9 8 7 6 5 4 3 2 1
for (letter in 'Z' downTo 'A') print(letter)
// ZYXWVUTSRQPONMLKJIHGFEDCBA
ΠΡΠ΅Π½Ρ ΡΠ°ΡΡΠΎ Π² ΡΠΈΠΊΠ»Π°Ρ Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ size-1, ΡΡΠΎΠ±Ρ Π½Π΅ Π²ΡΠΉΡΠΈ Π·Π° ΠΏΡΠ΅Π΄Π΅Π»Ρ ΠΌΠ°ΡΡΠΈΠ²Π°. ΠΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ Π½Π° until.
for(i in 0..cats.size - 1){
println(cats[i])
}
for(i in 0 until cats.size){
println(cats[i])
}
Π₯ΠΎΡΠΈΠΌ Π²ΡΠΉΡΠΈ ΠΈΠ· ΡΠΈΠΊΠ»Π° ΠΏΡΠΈ Π΄ΠΎΡΡΠΈΠΆΠ΅Π½ΠΈΠΈ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ.
for (i in 1..5) {
println(i)
// ΠΏΡΠ΅ΠΊΡΠ°ΡΠ°Π΅ΠΌ ΠΏΠ΅ΡΠ΅Π±ΠΎΡ, ΠΊΠΎΠ³Π΄Π° Π΄ΠΎΡΡΠΈΠ³Π½Π΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΡ 3
if (i == 3)
break
}
// ΠΠΎΠ»ΡΡΠΈΠΌ
1
2
3
ΠΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ continue ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ ΠΏΠ΅ΡΠ΅Π±ΠΎΡ, ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠΎ-ΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΌΡΡΠΊΠ½ΡΡΡ. Π§ΠΈΡΠ»ΠΎ 5 ΠΏΡΠΈ ΡΡΠΎΠΌ Π½Π΅ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ.
println("For loop 1 to 10 continue if number is 5")
for (i in 1..10) {
if (i == 5) {
println("Meow")
continue
}
println(i)
}
// Π Π΅Π·ΡΠ»ΡΡΠ°Ρ
For loop 1 to 10 continue if number is 5
1
2
3
4
Meow
6
7
8
9
10
ΠΠ»ΠΎΠΆΠ΅Π½Π½ΡΠ΅ ΡΠΈΠΊΠ»Ρ for
Π§Π°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π΄Π²Π° ΡΠΈΠΊΠ»Π° for. ΠΡΠΎΡΡΠ΅ΠΉΡΠΈΠΉ Π²Π°ΡΠΈΠ°Π½Ρ.
// ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠΈΠΊΠ»
for(x in 1..3){
// Π²ΡΠΎΡΠΎΠΉ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΠΉ ΡΠΈΠΊΠ»
for(y in 1..3){
print("$x $y \n")
}
}
// ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ
1 1
1 2
1 3
2 1
2 2
2 3
3 1
3 2
3 3
ΠΡΠ»ΠΈ ΠΌΡ Ρ ΠΎΡΠΈΠΌ Π΄ΠΎΡΡΠΎΡΠ½ΠΎ ΠΏΡΠ΅ΡΠ²Π°ΡΡ Π½Π° ΠΊΠ°ΠΊΠΎΠΌ-ΡΠΎ ΡΡΠ°ΠΏΠ΅ ΡΠΈΠΊΠ», ΡΠΎ ΠΌΠΎΠΆΠ΅ΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π°Π½Π½ΠΎΡΠ°ΡΠΈΡ outerLoop@ ΠΊ ΠΏΠ΅ΡΠ²ΠΎΠΌΡ ΡΠΈΠΊΠ»Ρ ΠΈ Π²Π½ΡΡΡΠΈ Π²ΡΠΎΡΠΎΠ³ΠΎ ΡΠΈΠΊΠ»Π° Π²ΡΠ·Π²Π°ΡΡ break@outerLoop. ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΡΠ°Π½ΡΡ ΡΠ°Π²Π½ΡΠΌΠΈ (2 2), ΡΠΈΠΊΠ» Π·Π°Π²Π΅ΡΡΠΈΡΡΡ Π΄ΠΎΡΡΠΎΡΠ½ΠΎ.
// ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠΈΠΊΠ»
outerLoop@ for (x in 1..3) {
// Π²ΡΠΎΡΠΎΠΉ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΠΉ ΡΠΈΠΊΠ»
for (y in 1..3) {
print("$x $y \n")
if (x == 2 && y == 2)
break@outerLoop
}
}
// ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ
1 1
1 2
1 3
2 1
2 2
forEach
ΠΡΠΎΠΉΡΠΈΡΡ ΠΏΠΎ Π²ΡΠ΅ΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΈ.
val daysOfWeek = listOf("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday")
daysOfWeek.forEach{
println(it)
}
repeat()
ΠΡΡΡΠΎΠ΅Π½Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄ Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΡΠ°Π·.
repeat(3){
println("ΠΠ°ΡΡΠΊΠ°! ΠΠ΄ΠΈ ΠΆΡΠ°ΡΡ!")
}
while
Π¦ΠΈΠΊΠ» while ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ — ΠΏΠΎΠΊΠ° ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΠΎΡΡΠ°ΡΡΡΡ ΠΈΡΡΠΈΠ½Π½ΡΠΌ, Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² Π±Π»ΠΎΠΊΠ΅ ΡΠΈΠΊΠ»Π°. ΠΡΠ»ΠΈ ΠΊΠΎΠ΄ ΠΏΠΎΡΠ»Π΅ ΡΡΠ»ΠΎΠ²ΠΈΡ ΡΠΈΠΊΠ»Π° ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ ΡΡΡΠΎΡΠΊΠΈ, ΡΠΎ ΡΠΈΠ³ΡΡΠ½ΡΠ΅ ΡΠΊΠΎΠ±ΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡΡΡΠΈΡΡ.
var i = 1
while (i
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ Π²Π½ΡΡΡΠΈ ΡΠΈΠΊΠ»Π° ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ ΡΠΈΡΠ»Π° ΠΎΡ 0 Π΄ΠΎ 8, Π½ΠΎ Π΅ΡΠ»ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ, ΡΠ΅ΠΌΡ ΡΠ°Π²Π½ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅ ΡΠΈΠΊΠ»Π°, ΡΠΎ ΡΠ²ΠΈΠ΄ΠΈΠΌ, ΡΡΠΎ ΠΎΠ½ΠΎ Π±ΠΎΠ»ΡΡΠ΅.
ΠΡΠ΅ΡΠ²Π°ΡΡ ΡΠΈΠΊΠ» ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅ΡΠ΅Π· break.
var i = 1
while (i
do-while
ΠΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌ ΠΊΠ°ΠΊΡΡ-ΡΠΎ ΡΠ°Π±ΠΎΡΡ, ΠΏΠΎΠΊΠ° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΊΠ°ΠΊΠΎΠ΅-ΡΠΎ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ — Π²ΡΠ²ΠΎΠ΄ΠΈΠΌ ΡΠΈΡΠ»ΠΎ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡΡ, ΠΏΠΎΠΊΠ° ΡΠΈΡΠ»ΠΎ ΠΌΠ΅Π½ΡΡΠ΅ 10.
var i = 1
do {
println(i)
i++
} while (i
ΠΠΎΠΆΠ½ΠΎ ΠΏΡΠ΅ΡΠ²Π°ΡΡ ΡΠΈΠΊΠ» ΡΠ΅ΡΠ΅Π· break. ΠΠΎΠ³Π΄Π° ΡΠΈΡΠ»ΠΎ ΡΡΠ°Π½Π΅Ρ ΡΠ°Π²Π½ΡΠΌ 5, ΡΠΈΠΊΠ» ΠΏΡΠ΅ΠΊΡΠ°ΡΠΈΡΡΡ.
var i = 1
do {
println(i)
if (i == 5)
break
i++
} while (i
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ
for Π΄Π»Ρ ΡΡΡΠΎΠΊΠΈ
Π Π΅ΠΊΠ»Π°ΠΌΠ°
ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Powershell Foreach, while ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠΈΠΊΠ»Ρ
ΠΠ°ΠΆΠ½ΡΠΌ ΠΏΠ΅ΡΠ²ΡΠΌ ΡΠ°Π³ΠΎΠΌ Π² ΠΎΠ±ΡΡΠ΅Π½ΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°Π±ΠΎΡΠ° Ρ ΡΠΈΠΊΠ»Π°ΠΌΠΈ
, Π ΡΡΠ°ΡΡΡΡ, PowerShell ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ ΡΠ°ΡΡΠΈ Π²ΠΌΠ΅ΡΡΠ΅ Ρ Π²Π°ΡΠΈΠΌΠΈ Π½Π°Π²ΡΠΊΠ°ΠΌΠΈ.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π΄Π΅Π½Ρ, Π²Π½ΡΡΡΠΈ ΡΠΈΠΊΠ»ΠΎΠ², ΡΡΠΎΠ±Ρ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ Π²ΡΠ΅ΠΌΡ ΠΈ ΡΡΠΈΠ»ΠΈΡ. ΠΠ°ΡΠΈ ΡΡΠ΅Π½Π°ΡΠΈΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΡΡΠΆΠ΅Π»ΡΡ ΡΠ°Π±ΠΎΡΡ, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ Π²Ρ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΠ΅ Π²Π°ΠΆΠ½ΡΡ ΡΠ°Π±ΠΎΡΡ β ΡΠΈΡΠ°Π΅ΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΡΡΠ°ΡΠ΅ΠΉ Π½Π° MakeUseOf!
ΠΠ΅ΡΠ»ΠΈ Powershell ForEach: Π΄Π²Π΅ΡΡ Π² ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ Π΄Π°Π½Π½ΡΡ
ForEach β ΡΡΠΎ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ ForEach-Object. (ΠΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ β ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ ΡΡΠ»ΡΠΊ Π΄Π»Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π² PowerShell.) Π‘Π΅ΠΉΡΠ°Ρ ΡΠ°ΠΌΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΡΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ PowerShell ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅.
ΠΠ°ΠΊ ΠΈ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, PowerShell ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ
, ΠΡΠ΅ Π² PowerShell ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠΌ, ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π΄Π°ΠΆΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΈΠΌΠ΅ΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ
, ΠΠΌΠ΅Π½Π½ΠΎ ΠΈΠ·-Π·Π° ΡΡΠΎΠ³ΠΎ ΡΠ²ΠΎΠΉΡΡΠ²Π° Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°Π΄Π°ΡΡ ΠΏΠΎΠΈΡΠΊ ΠΏΠΎ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈ Π² ΠΈΡΠΎΠ³Π΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΌΠ°ΡΡΠΈΠ² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ².
$yourVar = Get-ChildItem *
foreach ($file in $yourVar){
Your Steps
}
Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ·ΡΠΊΠ°Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΡΡΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° Π±ΡΠ΄Π΅Ρ ΠΌΠ½ΠΎΠ³ΠΎΡΡΠ°ΠΏΠ½ΡΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠΌ. Π‘Π½Π°ΡΠ°Π»Π° ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ Π΄Π»ΠΈΠ½Ρ, Π° Π·Π°ΡΠ΅ΠΌ ΠΏΡΠΎΡΡΠΈΡΡΠ²Π°Π΅ΠΌ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π³.
Π PowerShell Π²Ρ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡΠ΅ ΠΌΠ°ΡΡΠΈΠ² ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ , ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ForEach. ΠΡΠΎ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ Π²Π°ΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΡΠΎΠΊ ΠΊΠΎΠ΄Π°, ΡΡΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π΅ΡΡΡ Π±ΠΎΠ»Π΅Π΅ Π΄Π»ΠΈΠ½Π½ΡΠΉ ΡΠΊΡΠΈΠΏΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π½ΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ ΡΠΊΡΠΈΠΏΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ°ΡΡ ΡΠΈΠΊΠ»ΠΎΠ² Powershell ForEach. ΠΠ½ ΡΠΎΠ·Π΄Π°Π΅Ρ ZIP-Π°ΡΡ ΠΈΠ² Π²ΡΠ΅Ρ Π²Π°ΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ Π½Π΅ ΠΎΡΠΊΡΡΠ»ΠΈ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ 30 Π΄Π½Π΅ΠΉ.
ΠΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠ³ΠΎ Π°ΡΡ ΠΈΠ²Π° Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠΈΠΊΠ»ΠΎΠ² ForEach
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ»ΠΎΠΌΠ°ΡΡ ΡΠ°Π³ΠΈ Π²Π½ΠΈΠ·. Π’Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡ Get-ChildItem ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π² ΠΏΠ°ΠΏΠΊΠ΅ Β«ΠΠΎΠΊΡΠΌΠ΅Π½ΡΡΒ». ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΡΠ΅Π΄Ρ
$ ENV: USERPROFILE Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΡΠΊΡΠΈΠΏΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ΅ΠΊΡΡΠΈΠΉ ΠΏΡΠΎΡΠΈΠ»Ρ. ΠΡΠ° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π±ΠΎΠ»Π΅Π΅ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΠ°, ΡΠ΅ΠΌ ΠΆΠ΅ΡΡΠΊΠΎ Π·Π°ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΏΡΡΡ. Π Π΅Π·ΡΠ»ΡΡΠ°ΡΡ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠΈΡΠΊΠ° ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°ΡΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ $ MyDocs. ΠΠ°ΡΠ΅ΠΌ ΠΌΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ Π½Π°Ρ ΡΠΈΠΊΠ» ForEach, Π·Π°ΡΡΠ°Π²Π»ΡΡ Π΅Π³ΠΎ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡΡ ΡΠ΅ΡΠ΅Π· ΠΊΠ°ΠΆΠ΄ΡΠΉ $ Doc Π² $ MyDocs.
$oldDocs = @()
$MyDocs = Get-ChildItem -Path "$($env:USERPROFILE)\Documents" -Recurse
foreach ($doc in $MyDocs){
if($doc.LastAccessTime -lt $(Get-Date).addDays(-30)){
$oldDocs += $doc
}
}
$ArchiveFolder = New-Item -Path "$($env:USERPROFILE)\Documents\$((Get-Date -Format MMddyy).toString())" -ItemType Directory
foreach ($doc in $oldDocs){
Move-Item -Path $doc.FullName -Destination "$($ArchiveFolder.FullName)\$($doc.Name)" -Confirm $false
}
$source = $ArchiveFolder.FullName
$destination = "$($env:USERPROFILE)\Documents\$($ArchiveFolder.Name).zip"
Add-Type -AssemblyName "system.io.compression.filesystem"
[io.compression.zipfile]::CreateFromDirectory($source, $destination)
if(test-path $destination){
Remove-Item -Path $ArchiveFolder -Recurse -Confirm $false
}
ΠΠ½ΡΡΡΠΈ ΡΠΈΠΊΠ»Π° ΠΌΡ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΠΌ, Π΅ΡΡΡ Π»ΠΈ Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° LastAccessTime Π½Π΅Π΄Π²ΠΈΠΆΠΈΠΌΠΎΡΡΡ ΡΡΠ°ΡΡΠ΅ 30 Π΄Π½Π΅ΠΉ. ΠΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΡΠΎ Ρ Get-Date ΠΊΠΎΠΌΠ°Π½Π΄Π»Π΅Ρ, ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ AddDays ΡΡΠ½ΠΊΡΠΈΡ Ρ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΌ ΡΡΠΈΠ΄ΡΠ°ΡΡ. ΠΡΠ»ΠΈ ΡΡΠΎ ΡΠ°ΠΊ, ΠΌΡ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΡΠ°ΠΉΠ» Π² $ myOldDocs ΠΌΠ°ΡΡΠΈΠ². ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΡΠ°ΠΉΠ»ΠΎΠ² Π·Π°Π²Π΅ΡΡΠ΅Π½Π°, ΠΌΡ Π±Π΅ΡΠ΅ΠΌ Π½Π°Ρ Π·Π°ΠΊΠΎΠ½ΡΠ΅Π½Π½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² ΠΈ ΡΠΎΠ·Π΄Π°Π΅ΠΌ zip-ΡΠ°ΠΉΠ». ΠΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ»ΠΎΠΆΠ½Π΅Π΅, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ Π°ΠΊΡΠΈΠ²Π°ΡΠΈΡ .NET. ΠΠ΅ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΉΡΠ΅ΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ Π½Π΅ ΡΠΎΠ²ΡΠ΅ΠΌ ΠΏΠΎΠ½ΡΠ»ΠΈ β Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΡΠ°ΡΡΡ ΠΊΠΎΠ΄ ΠΈΠ· ΡΡΠΎΠ³ΠΎ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΠΎΠ³ΠΎ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ° TechNet.
Π§ΡΠΎΠ±Ρ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π·Π΄Π΅ΡΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ: ΠΌΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΡΠΈΠΌ Π²ΡΠ΅ Π½Π°ΡΠΈ ΡΡΠ°ΡΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π² Π½ΠΎΠ²ΡΠΉ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Ρ ΡΠ΅Π³ΠΎΠ΄Π½ΡΡΠ½Π΅ΠΉ Π΄Π°ΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ 30 Π΄Π½Π΅ΠΉ. ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠ° ΠΏΠ°ΠΏΠΊΠ° Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π½Π°, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ZIP-Π°ΡΡ ΠΈΠ² Ρ ΡΠ΅ΠΌ ΠΆΠ΅ ΠΈΠΌΠ΅Π½Π΅ΠΌ. ΠΡ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΡΠ΅ΠΌ, ΡΡΠΎΠ±Ρ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ Π°ΡΡ ΠΈΠ² ΡΡΠΏΠ΅ΡΠ½ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½, ΠΈ Π² Π½Π΅ΠΌ Π΅ΡΡΡ ΡΠ°ΠΉΠ» .ZIP, Π° Π·Π°ΡΠ΅ΠΌ ΡΠ΄Π°Π»ΠΈΠΌ Π½ΠΎΠ²ΡΡ ΠΏΠ°ΠΏΠΊΡ. Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΡΡΠΎ ΠΊΠ°ΠΊ Π·Π°ΠΏΠ»Π°Π½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΠΎΠ΄ΠΈΠ½ ΡΠ°Π· Π² ΠΌΠ΅ΡΡΡ. ΠΡ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΠ΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΡΠ° ΠΈ ΡΠΎΡ ΡΠ°Π½ΠΈΡΠ΅ ΠΏΠ°ΠΏΠΊΡ Β«ΠΠΎΠΊΡΠΌΠ΅Π½ΡΡΒ» Π² ΡΠΈΡΡΠΎΡΠ΅.
ΠΠΎΠΊΠ° ΠΈ ΠΠ΅Π»Π°ΠΉ ΠΠΎΠΊΠ°: Π¦ΠΈΠΊΠ»Ρ ΠΏΡΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠΈ
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΠΈΠΊΠ» ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈ ΡΠΎΠ±Π»ΡΠ΄Π΅Π½ΠΈΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΡΠ»ΠΎΠ²ΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠΈΠΊΠ» While. ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π΄Π»Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΡ ΡΡΠ΅ΡΠ°, ΡΠ½Π°ΡΠ°Π»Π° ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π΅Π΅.
i=0
while(i
ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Π² ΡΠΎΠΌ, ΡΡΠΎ Π΅ΡΠ»ΠΈ Π²Ρ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΡΡΠ΅ΡΡΠΈΠΊ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°Ρ ΠΎΡΠ΅ΡΡ, ΡΡΠΎΠ±Ρ Π²Π°Ρ ΠΊΠΎΠ΄ Π·Π°ΠΏΡΡΠΊΠ°Π»ΡΡ Ρ ΠΎΡΡ Π±Ρ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΡΠ΅ΡΡ Π²Π΅ΡΠ΅Π½. ΠΡΠΎ ΡΠ»ΡΡΠ°ΠΉ Ρ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΌ ΡΡΠ΅Π½Π°ΡΠΈΡ Π½ΠΈΠΆΠ΅. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π² ΡΡΠΈΡ ΡΠ»ΡΡΠ°ΡΡ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΠΊΠ» Do-While
, Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ.
do{
Your Steps
}while(Conditional Statement)
ΠΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π΅ ΡΠ°ΠΊ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΠΎ Π΄Π»Ρ Π½Π°ΡΠΈΠ½Π°ΡΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°. ΠΠ΅Π»Π°Ρ ΡΠΈΠΏΠΈΡΠ½ΡΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠΈ ΠΈΠ·ΠΎ Π΄Π½Ρ Π² Π΄Π΅Π½Ρ, Π²Ρ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΠΎΠ»ΠΊΠ½ΡΡΡΡΡ Ρ Π½ΠΈΠΌΠΈ ΡΠ°ΠΊ ΡΠ°ΡΡΠΎ. Π§ΡΠΎ ΠΈΠΌ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΏΡΠΈΠ³ΠΎΠ΄ΠΈΡΡΡ, ΡΠ°ΠΊ ΡΡΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠΌΠ΅ΡΠ° Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΡΡΠΏΠ΅ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠ°.
ΠΡ ΡΠΎΠ±ΠΈΡΠ°Π΅ΠΌΡΡ ΡΠΎΠ·Π΄Π°ΡΡ Π±ΡΡΡΡΡΠΉ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ° ΠΈ ΠΎΠΏΠΎΠ²Π΅ΡΠ΅Π½ΠΈΡ, Π΅ΡΠ»ΠΈ ΠΎΠ½ Π½Π΅ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ 15 ΠΌΠΈΠ½ΡΡ. Π ΡΡΠΎΠΌ ΡΡΠ΅Π½Π°ΡΠΈΠΈ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ, ΡΡΠΎ ΡΡΠΎ Π΄ΠΎΠΌΠ°ΡΠ½ΠΈΠΉ ΡΠ΅ΡΠ²Π΅Ρ ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΎΠΉ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ ΠΎΡΠ΅Π½Ρ ΡΠ°ΡΡΠΎ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠΆΠ°Π΅ΡΡΡ. ΠΠ΅ ΡΡΠ΅ΡΠ½ΡΠΉΡΠ΅ΡΡ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ Π²ΡΠ΅ΠΌΡ, Π΅ΡΠ»ΠΈ Π²Π°Ρ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ ΠΎΠ±ΡΡΠ½ΠΎ Π·Π°Π³ΡΡΠΆΠ°Π΅ΡΡΡ Π±ΡΡΡΡΠ΅Π΅.
ΠΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠ° ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ°: ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΈΠΊΠ»Π° Do-While
ΠΡΠΎΡ ΡΠΊΡΠΈΠΏΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅. ΠΠΎ-ΠΏΠ΅ΡΠ²ΡΡ , Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΠ΅ΡΠ΅Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΊΠΎΠΌΠΏΡΡΡΠ΅Ρ ΠΠΎΠΌΠ°Π½Π΄Π° ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΈΡΡ ΡΠ΄Π°Π»Π΅Π½Π½ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ. (ΠΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ ΡΠΈΠΊΡΠΈΠ²Π½ΡΠΉ IP Π·Π΄Π΅ΡΡ Π΄Π»Ρ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠΈ, Π½Π΅ Π·Π°Π±ΡΠ΄ΡΡΠ΅ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΠ°ΡΡ Π΅Π³ΠΎ DNS / IP Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°). ΠΠ°ΡΠ΅ΠΌ ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΅ΡΡΠΈΠΊΠ°, Ρ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π΅Π³ΠΎ Π½Π° 0. ΠΠ°Π»Π΅Π΅ Ρ Π²Π°Ρ Π΅ΡΡΡ ΡΠΈΠΊΠ» Do Ρ Start-Sleep, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π½Π° 300 ΡΠ΅ΠΊΡΠ½Π΄ (ΠΏΡΡΡ ΠΌΠΈΠ½ΡΡ). ΠΡΠΎΡΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΠΎΠ΄ΠΈΠ½ ΠΊ ΡΡΠ΅ΡΡΠΈΠΊΡ.
Restart-Computer -ComputerName 127.0.0.1
i=0
do{
Start-Sleep -Seconds 300
$i += 1
}while((!(Test-Connection 127.0.0.1 -Quiet)) -or $i -gt 3)
if($i -gt 3){
Write-Ouput "Remote Machine not responding, please check."
}
else{
Write-Output "Reboot Succeeded"
}
Π’ΠΎΠ³Π΄Π° Ρ Π½Π°Ρ Π΅ΡΡΡ Π½Π°ΡΠΈ ΠΊΡΠΈΡΠ΅ΡΠΈΠΈ. ΠΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΠ΅ΡΡ Or, ΡΡΠΎΠ±Ρ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ ΡΠ±ΠΎΠΉ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅. ΠΠ»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²ΠΎΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΊΡΠΈΠΏΡ, Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΠΎ Π·Π°ΡΠΈΠΊΠ»ΠΈΠ²Π°ΡΡΠΈΠΉΡΡ Π½Π° ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠΈ ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°. Π§ΡΠΎΠ±Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΌΠ°ΡΠΈΠ½Ρ, ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Π’Π΅ΡΡ-ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΠΠΎΠΌΠ°Π½Π΄Π»Π΅Ρ. ΠΠ»Ρ ΠΏΡΠΎΡΡΠΎΡΡ ΡΡΠΎ Ping Π΄Π»Ρ PowerShell. ΠΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ -Π’ΠΈΡ ΠΎ ΡΡΠΎ Π·Π°ΡΡΠ°Π²Π»ΡΠ΅Ρ Π΅Π³ΠΎ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡ True ΠΈΠ»ΠΈ False, Π° Π½Π΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ². ΠΡΠΎΡΠ°Ρ ΡΠ°ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° Or ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ, Π±ΠΎΠ»ΡΡΠ΅ Π»ΠΈ ΡΡΠ΅ΡΡΠΈΠΊ, ΡΠ΅ΠΌ ΡΡΠΈ.
ΠΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΠΈΠΊΠ»Π° ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΡΠΎΠ·Π΄Π°ΡΡ Π²ΡΠ²ΠΎΠ΄. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π½Π°Ρ ΡΡΠ΅ΡΡΠΈΠΊ. ΠΡΠΎ Π±ΡΡΡΡΡΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ if / else. ΠΡΠ»ΠΈ ΠΎΠ½ΠΎ Π±ΠΎΠ»ΡΡΠ΅ ΡΡΠ΅Ρ , ΡΠΊΡΠΈΠΏΡ Π²ΡΠ²ΠΎΠ΄ΠΈΡ, ΡΡΠΎ ΡΠ΄Π°Π»Π΅Π½Π½Π°Ρ ΠΌΠ°ΡΠΈΠ½Π° Π½Π΅ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ. ΠΡΠ»ΠΈ ΡΡΠΎ Π½Π΅ ΡΠ°ΠΊ, Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ, ΡΡΠΎ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠ° ΠΏΡΠΎΡΠ»Π° ΡΡΠΏΠ΅ΡΠ½ΠΎ.
ΠΡΡΠ³ΠΈΠ΅ ΠΏΠ΅ΡΠ»ΠΈ
Π PowerShell Π΄ΠΎΡΡΡΠΏΠ½Ρ Π΄Π²Π° Π΄ΡΡΠ³ΠΈΡ ΡΠΈΠΏΠ° ΡΠΈΠΊΠ»ΠΎΠ². ΠΠ½ΠΈ Π² Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΡΠ΅ΠΏΠ΅Π½ΠΈ ΡΠ²ΡΠ·Π°Π½Ρ Ρ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΌΠΈ Π΄Π²ΡΠΌΡ ΡΠΈΠΊΠ»Π°ΠΌΠΈ, ΠΎΠ½ΠΈ ΠΏΡΠΎΡΡΠΎ Π½Π΅ ΡΠ°ΠΊ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ. Π¦ΠΈΠΊΠ» For ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΡ While. ΠΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΠ΅ Π²ΡΠ΅ ΡΠ²ΠΎΠΈ ΠΊΡΠΈΡΠ΅ΡΠΈΠΈ Π² ΠΎΡΠ΅Π½ΠΊΠ΅, Π° Π·Π°ΡΠ΅ΠΌ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΠ΅ ΡΠ²ΠΎΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π»Π΅ΡΡ.
for($i = 0;$i -lt 10;$i++){
Your Steps
}
Π¦ΠΈΠΊΠ»Ρ Β«ΠΠΎΒ» ΠΏΠΎΡ ΠΎΠΆΠΈ Π½Π° ΡΠΈΠΊΠ»Ρ Β«ΠΠΎ ΡΠ΅Ρ ΠΏΠΎΡΒ», Π²Ρ ΠΏΡΠΎΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ Β«ΠΠΎΠΊΠ°Β» Π½Π° Β«ΠΠΎΒ». Π ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΡ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΡΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅, ΡΡΠΎ ΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅. ΠΡΠΎ Π²ΡΠ±ΠΎΡ ΡΡΠΈΠ»Ρ, Π½ΠΎ Do While Π±ΠΎΠ»Π΅Π΅ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»Π΅Π½ Π² Π΄ΡΡΠ³ΠΈΡ ΡΠΈΡΡΠ°ΡΠΈΡΡ . Π’Π°ΠΊ ΡΡΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΠΎΠΌΠ½ΠΈΡΠ΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½, Β«ΠΠ΅Π»Π°ΠΉ ΠΏΠΎΠΊΠ°Β» Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π΅Π·Π΅Π½.
PowerShell ΡΠ°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ ΠΏΠΎΠΌΠΎΡΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· ΡΡΠΈΡ ΡΠΈΠΊΠ»ΠΎΠ². ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΠΌΠΎΡΡ, Π΄ΠΎΠ±Π°Π²ΠΈΠ² ΠΎΠΊΠΎΠ»ΠΎ ΠΏΠ΅ΡΠ΅Π΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΡΠΈΠΊΠ»Π° Π² Get-Help. ΠΠ°ΡΠ΅ΠΌ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠΎΠ²Π΅ΡΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°. ΠΡΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ Π·Π°ΡΡΡΡΠ»ΠΈ.
ΠΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ ΡΠ°ΡΡΠΈ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΡΠΎΠ±ΠΎΠΉ
ΠΠ° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Ρ Π²Π°Ρ Π΅ΡΡΡ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ Π½Π°Π²ΡΠΊΠΎΠ², ΡΡΠΎΠ±Ρ Π½Π°ΡΠ°ΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½Π°Π΄Π΅ΠΆΠ½ΡΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠΈ. ΠΡΠ΄Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΡ Π΄ΠΎΠΌΠ°ΡΠ½ΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΡ
ΠΈΠ»ΠΈ ΡΠΊΠΎΠ½ΠΎΠΌΡ Π²ΡΠ΅ΠΌΡ Π½Π° ΡΠ°Π±ΠΎΡΠ΅, ΡΠΈΠΊΠ»Ρ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ Π²Π°ΡΠΈΠΌ ΡΡΠ΅Π½Π°ΡΠΈΡΠΌ Π΄Π΅Π»Π°ΡΡ Π±ΠΎΠ»ΡΡΠ΅. ΠΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΡΡΠΈΡ ΡΠΈΠΊΠ»ΠΎΠ² Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ ΠΎΡΠΈΠ±ΠΎΠΊ Π²ΡΠ²ΠΎΠ΄ΠΈΡ Π²Π°Ρ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π·Π° ΡΠ°ΠΌΠΊΠΈ
, ΠΡΠΎ ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ Π΄Π²Π΅ΡΡ Π² Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΎΠ΄Π²ΠΈΠ½ΡΡΡΠ΅ ΡΠ·ΡΠΊΠΈ.
Π§ΡΠΎ Π·Π° ΡΠΌΠ½ΡΠΉ ΡΡΠ΅Π½Π°ΡΠΈΠΉ PowerShell Π²Ρ ΡΠΎΠ·Π΄Π°Π»ΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΈΠΊΠ»ΠΎΠ²? ΠΠΎΠ΄Π΅Π»ΠΈΡΠ΅ΡΡ ΡΡΠΈΠΌ Ρ Π½Π°ΠΌΠΈ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ .
ΠΡΠ½ΠΎΠ²Ρ php, ΡΡΠΎΠΊ 6 β Π¦ΠΈΠΊΠ» For
Π¦ΠΈΠΊΠ» For ΡΡΠΎ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΈΠΊΠ», ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΏΠ΅ΡΠ΅Π±ΠΈΡΠ°ΡΡ ΠΏΠΎΠ²ΡΠΎΡΡΠ΅ΠΌΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ°. Π PHP ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π΄Π²Π° ΠΏΡΠΎΡΡΡΡ ΡΠΈΠΊΠ»Π°, ΡΠΈΠΊΠ» for ΠΈ ΡΠΈΠΊΠ» foreach.
Π¦ΠΈΠΊΠ» For.
Π¦ΠΈΠΊΠ» for ΡΠ΄ΠΎΠ±Π΅Π½, ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡΡΡΠ΅ΡΡΠ²ΠΈΡΡ ΠΏΠ΅ΡΠ΅Π±ΠΎΡ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° ΡΠ΅ΡΠ΅Π· ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Ρ Π½Π°Ρ ΠΈΠΌΠ΅Π΅ΡΡΡ ΡΠΏΠΈΡΠΎΠΊ Π½Π΅ΡΠ΅ΡΠ½ΡΡ ΡΠΈΡΠ΅Π». ΠΠ»Ρ Π²ΡΠ²ΠΎΠ΄Π° ΠΈΡ Π½Π° ΡΠΊΡΠ°Π½ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ ΠΈΠ· Π½ΠΈΡ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡΠ°Π»ΡΠ½ΠΎ. ΠΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΡ ΠΏΠΈΡΠ΅ΠΌ Π² ΡΠΈΠΊΠ»Π΅ for, ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ i, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ (ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ΠΈΠ΅, ΠΏΡΠΎΡ ΠΎΠ΄ ΡΠΈΠΊΠ»Π°) ΡΠΈΠΊΠ»Π° for.
$odd_numbers = [1,3,5,7,9]; for ($i = 0; $iΠΠ΅ΡΠ²Π°Ρ ΡΡΡΠΎΠΊΠ° ΡΠΈΠΊΠ»Π° for ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΡΠΈ ΡΠ°ΡΡΠΈ:
- ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ($i = 0)
β ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΈΡΠ΅ΡΠ°ΡΠΎΡΠ° $i ΠΈ Π·Π°Π΄Π°ΡΠΌ Π΅ΠΉ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Β«0Β» - ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΡΠ°Π±ΠΎΡΡ ΡΠΈΠΊΠ»Π° ($i — ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΡΠΎΡ ΠΎΠ΄Π΅ (ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ) Π²ΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ. Π¦ΠΈΠΊΠ» ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ, ΠΊΠΎΠ³Π΄Π° Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡΡ ΡΡΠ»ΠΎΠ²ΠΈΠ΅, — ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ $i Π±ΡΠ΄Π΅Ρ Π±ΠΎΠ»ΡΡΠ΅ Π΄Π»ΠΈΠ½Ρ ΠΌΠ°ΡΡΠΈΠ²Π°.
- ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ($i=$i+1)
β ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΡΠΎΡ ΠΎΠ΄Π΅ ΠΏΠΎ ΡΠΈΠΊΠ»Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ $i ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡΡ. ΠΡΡΡ ΡΠΏΠΎΡΠΎΠ± ΡΠ΄Π΅Π»Π°ΡΡ Π·Π°ΠΏΠΈΡΡ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΊΠΎΡΠΎΡΠ΅Β β $i+=1 ΠΈΠ»ΠΈ $i++.
Π¦ΠΈΠΊΠ» Foreach.
Π¦ΠΈΠΊΠ» foreach Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅Π±ΠΎΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ»ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡ, ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ.
Π‘ΠΊΠ°ΠΆΠ΅ΠΌ, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ
Π½Π΅ΡΠ΅ΡΠ½ΡΡ
ΡΠΈΡΠ΅Π» ΠΎΡ 1 Π΄ΠΎ 10 ΠΈ Π²ΡΠ²Π΅ΡΡΠΈ ΠΈΡ
Π½Π° ΡΠΊΡΠ°Π½ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ.
Π‘ ΡΠΈΠΊΠ»ΠΎΠΌ foreach, Π²ΠΌΠ΅ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΎΡΠ° Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΌΠ°ΡΡΠΈΠ²Π°, ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΈΠ· ΠΌΠ°ΡΡΠΈΠ²Π° Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ $odd_number.
$odd_numbers = [1,3,5,7,9]; foreach ($odd_numbers as $odd_number) { echo $odd_number . "\n"; }
ΠΡΠΈ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ΅ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² Ρ ΠΊΠ»ΡΡΠ°ΠΌΠΈ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
$phone_numbers = [ "ΠΠ΅ΡΠ°" => "415-235-8573", "ΠΠ²Π³Π΅Π½ΠΈΡ" => "415-492-4856", ]; foreach ($phone_numbers as $name => $number) { echo "Π§Π΅Π»ΠΎΠ²Π΅ΡΠ΅ΠΊ $name ΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π½ΠΎΠΌΠ΅ΡΠΎΠΌ ΡΠ΅Π»Π΅ΡΠΎΠ½Π° $number.\n"; }
Π£ΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΠ΅
ΠΠ°ΠΏΠ΅ΡΠ°ΡΠ°ΠΉΡΠ΅ Π²ΡΠ΅ Π½ΠΎΠΌΠ΅ΡΠ° ΠΌΠ°ΡΡΠΈΠ²Π° ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠΈΠΌΠ²ΠΎΠ» ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π° Π½Π° Π½ΠΎΠ²ΡΡ ΡΡΡΠΎΠΊΡ Β«\nΒ» Π΄Π»Ρ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: www.learn-php.org
Π¦ΠΈΠΊΠ»Ρ Bash | Losst
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΠΌ Π½Π°Ρ ΡΠΈΠΊΠ» ΠΏΡΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠΊΡΠΈΠΏΡΠΎΠ² Π½Π° Bash. ΠΡ ΡΠΆΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π°ΡΡ ΠΈΠ²Π°ΠΌΠΈ ΠΈ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ, Π½ΠΎ ΡΡΠΎΠ³ΠΎ Π΅ΡΠ΅ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ. ΠΡΠ±ΠΎΠΉ ΡΠ²Π°ΠΆΠ°ΡΡΠΈΠΉ ΡΠ΅Π±Ρ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΠΈΠΊΠ»Ρ. Π¦ΠΈΠΊΠ» — ΡΡΠΎ ΡΠ°ΠΊΠ°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ ΡΡΠ°ΡΡΠΎΠΊ ΠΊΠΎΠ΄Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ°Π·.
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΈΠΊΠ»ΠΎΠ² Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠ΅Π½Ρ ΡΠΈΠ»ΡΠ½ΠΎ ΡΠΎΠΊΡΠ°ΡΠΈΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΡΡΠΎΠΊ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π΄Π»Ρ ΠΎΠ΄Π½ΠΎΡΠΈΠΏΠ½ΡΡ
ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΠΈΠΊΠ»Ρ Bash, ΠΊΠ°ΠΊ ΠΈΡ
ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ.
Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅ ΡΡΠ°ΡΡΠΈ:
Π¦ΠΈΠΊΠ»Ρ Bash
ΠΠ°ΠΊ Ρ ΡΠΆΠ΅ ΡΠΊΠ°Π·Π°Π», ΡΠΈΠΊΠ»Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈ ΡΠΎΡ ΠΆΠ΅ ΡΡΠ°ΡΡΠΎΠΊ ΠΊΠΎΠ΄Π° Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ°Π·. Π Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΈΠΏΠΎΠ² ΡΠΈΠΊΠ»ΠΎΠ². ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΠΈΠ· Π½ΠΈΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΎΠΉ Bash. ΠΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΈΡ Π²ΡΠ΅ Π² ΡΠ΅Π³ΠΎΠ΄Π½ΡΡΠ½Π΅ΠΉ ΡΡΠ°ΡΡΠ΅, Π½ΠΎ ΡΠ½Π°ΡΠ°Π»Π° ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΊΠ°ΠΊΠΈΠΌΠΈ ΠΎΠ½ΠΈ Π±ΡΠ²Π°ΡΡ:
- for — ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅Π±ΡΠ°ΡΡ Π²ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΈΠ· ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ-ΡΡΠ΅ΡΡΠΈΠΊ Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ΠΈΠΉ;
- while — ΡΠΈΠΊΠ» Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠΊΠ° ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΠΈΡΡΠΈΠ½Π½ΠΎ;
- until — ΡΠΈΠΊΠ» Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠΎΠΊΠ° ΡΡΠ»ΠΎΠ²ΠΈΠ΅ Π»ΠΎΠΆΠ½ΠΎ.
Π¦ΠΈΠΊΠ»Ρ Bash, ΡΡΠΎ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ Π²Π΅ΡΡ ΠΈ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Ρ Π½ΠΈΠΌΠΈ Π±ΡΠ΄Π΅Ρ Π½Π΅ΡΠ»ΠΎΠΆΠ½ΠΎ. Bash ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΠΊΠ»Ρ ΠΊΠ°ΠΊ Π² ΡΠΊΡΠΈΠΏΡΠ°Ρ , ΡΠ°ΠΊ ΠΈ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠ΅. ΠΠ°Π»ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΡΡΠΈΡ Π²ΠΈΠ΄ΠΎΠ² ΡΠΈΠΊΠ»ΠΎΠ².
Π¦ΠΈΠΊΠ» for
Π¦ΠΈΠΊΠ» for bash ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΎΡΠ΅Π½Ρ ΡΠ°ΡΡΠΎ ΠΈΠ·-Π·Π° ΡΠ²ΠΎΠ΅ΠΉ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠΈ. ΠΠ³ΠΎ ΠΏΡΠΎΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠ³Π΄Π° Π²Ρ Π·Π½Π°Π΅ΡΠ΅ ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π· Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ²ΡΠΎΡΠΈΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ ΠΈΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΏΠΎ ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ Π²ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈ Π²Ρ Π½Π΅ Ρ ΠΎΡΠΈΡΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ΠΈΠΉ.
Π¦ΠΈΠΊΠ» for ΠΈΠΌΠ΅Π΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠΎΠ² ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π²Π΅ΡΡΠΈ ΡΠ΅Π±Ρ ΠΏΠΎ ΡΠ°Π·Π½ΠΎΠΌΡ. ΠΠ»Ρ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΠΏΠΈΡΠΊΠ° ΡΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°ΠΊΠΎΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
for ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ in ΡΠΏΠΈΡΠΎΠΊ
do
ΠΊΠΎΠΌΠ°Π½Π΄Π°1
ΠΊΠΎΠΌΠ°Π½Π΄Π°2
done
ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠΈΠΊΠ» for Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ ΡΠΈΠΏΠ° Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Ρ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠ»ΠΎΠ²Π° for. ΠΠ°Π»ΡΡΠ΅ Π²ΡΠ΅ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΡΠΈΠΏΠ°. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΠΎΡΠ»Π΅ for ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΈΠΌΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Π² ΠΊΠΎΡΠΎΡΡΡ Π±ΡΠ΄Π΅Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΡΠΏΠΈΡΠΊΠ°, Π·Π°ΡΠ΅ΠΌ ΠΈΠ΄Π΅Ρ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ in ΠΈ ΡΠ°ΠΌ ΡΠΏΠΈΡΠΎΠΊ. ΠΠΎΠΌΠ°Π½Π΄Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½ΡΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π² ΡΠΈΠΊΠ»Π΅ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΡΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ do ΠΈ done.
ΠΡΠΎΠ²Π΅ΡΠΈΠΌ Π²ΡΠ΅ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΠΈ Π½Π°ΠΏΠΈΡΠ΅ΠΌ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ ΡΠΊΡΠΈΠΏΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ Π½ΠΎΠΌΠ΅ΡΠ° ΠΎΡ 1 Π΄ΠΎ 5:
vi for1.sh
!/bin/bash
for number in 1 2 3 4 5
do
echo $number
done
ΠΠ°ΠΉΡΠ΅ ΡΠΊΡΠΈΠΏΡΡ ΠΏΡΠ°Π²Π° Π½Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΈ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ Π΅Π³ΠΎ:
chmod +x for1.sh
./for1.sh
ΠΡ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅, ΡΡΠΎ Π²ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ ΠΈ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π»ΠΎΡΡ. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π²ΡΠ²Π΅Π΄Π΅Ρ ΡΠΈΡΡΡ ΠΎΡ 1 Π΄ΠΎ 5, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΠ»ΠΈ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΡΠΈΠΊΠ»Ρ Π»ΡΠ±ΠΎΠΉ ΠΌΠ°ΡΡΠΈΠ², Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΡΠ²ΠΎΠ΄ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ Π΄ΡΡΠ³ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
!/bin/bash
for iface in $(ls /sys/class/net/)
do
echo $iface
done
ΠΠ°ΠΊ Π²Ρ ΡΠΆΠ΅ ΠΏΠΎΠ½ΡΠ»ΠΈ, ΡΡΠΎΡ ΡΠΈΠΊΠ» Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ , ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½Π½ΡΡ ΠΊ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΡΠ΅ΡΠ΅Π²ΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ². ΠΠΎ Π² ΡΠΈΠΊΠ»Π΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΈΡ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ, Π½ΠΎ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ.
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠΈΠΏ ΡΠΈΠΊΠ»Π° for ΠΏΠΎΡ ΠΎΠΆ Π½Π° Π΅Π³ΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π² ΡΠ·ΡΠΊΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π‘ΠΈ ΠΈ Π‘++. ΠΠ½ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΡΡΠ΅Ρ ΡΠ°ΡΡΠ΅ΠΉ, ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΠ° ΡΡΠ΅ΡΡΠΈΠΊΠ°, ΡΡΠ»ΠΎΠ²ΠΈΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π½Π°Π΄ ΡΡΠ΅ΡΡΠΈΠΊΠΎΠΌ. ΠΠΎΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
for ((ΡΡΠ΅ΡΡΠΈΠΊ=1; ΡΡΠ΅ΡΡΠΈΠΊ < 10; ΡΡΠ΅ΡΡΠΈΠΊ++))
do
ΠΊΠΎΠΌΠ°Π½Π΄Π°1
ΠΊΠΎΠΌΠ°Π½Π΄Π°2
done
ΠΡΠΎΡ ΡΠΈΠΊΠ» Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ»ΠΎΠΆΠ½Π΅Π΅, Π½ΠΎ ΠΎΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ΄Π΅Π»Π°ΡΡ Π±ΠΎΠ»ΡΡΠ΅. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΠΈΠΊΠ»Π° ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠ΅ΡΠ΅Π±ΠΈΡΠ°ΡΡ ΠΌΠ°ΡΡΠΈΠ²Ρ, Π½ΠΎ ΠΈ ΡΠ΄Π΅Π»Π°ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ΠΈΠΉ. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΏΡΠΈΠΌΠ΅Ρ:
!/bin/bash
for ((i=1; iΒ < 10; i++))
do
echo $i
done
Β
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΡΡΡΠ°Π½Π½ΡΠΉ, ΠΏΡΠ°Π²Π΄Π°? ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΠΊΠ°ΠΊ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΡΡΠ»ΠΎΠ²ΠΈΡ. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ΅ΡΡΠΈΠΊΠ° ΡΡΠ°Π²Π½ΠΈΠ²Π°Π΅ΡΡΡ Ρ ΡΡΠ°Π»ΠΎΠ½ΠΎΠΌ. ΠΠ΅ΠΉΡΡΠ²ΠΈΠ΅ Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΡΠ΅ΡΡΠΈΠΊΠΎΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΡΠ°Π·Ρ ΠΆΠ΅ ΠΏΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠΌΠ°Π½Π΄, Π° ΡΠΆΠ΅ ΠΏΠΎΡΠΎΠΌ Π΄Π΅Π»Π°Π΅ΡΡΡ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Ρ Π½Π°Ρ ΠΏΡΠΈ ΠΏΠ΅ΡΠ²ΠΎΠΌ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ i ΡΠ°Π²Π½ΠΎ 1, Π° ΠΏΠΎΡΠ»Π΅ Π½Π΅Π³ΠΎ ΡΠΆΠ΅ Π΄Π²Π° 2. Π’Π΅ΠΏΠ΅ΡΡ ΠΊ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ Π΄Π΅Π²ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΡ ΠΎΠ΄Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ΅ΡΡΠΈΠΊΠ° Π±ΡΠ΄Π΅Ρ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΎ Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡΡ ΠΈ ΡΡΠ°Π½Π΅Ρ 10. Π£ΡΠ»ΠΎΠ²ΠΈΠ΅ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ 10 < 10 Π½Π΅ Π²Π΅ΡΠ½ΠΎ, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠΈΠΊΠ» Π΄Π°Π»ΡΡΠ΅ Π½Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ.
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΎΠ³ΠΎ ΠΆΠ΅ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΡΠ΅ ΡΠΈΠΊΠ»Ρ bash linux:
!/bin/bash
for ((;;))
do
echo "ΠΠ΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ ΡΠΈΠΊΠ», Π½Π°ΠΆΠΌΠΈΡΠ΅ CTRL+C Π΄Π»Ρ Π²ΡΡ
ΠΎΠ΄Π°"
done
ΠΡΠ»ΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠΉΡΠΈ ΠΈΠ· ΡΠΈΠΊΠ»Π° ΠΏΡΠ΅ΠΆΠ΄Π΅Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ. ΠΠΎ ΡΠ°ΠΊ Π΄Π΅Π»Π°ΡΡ Π½Π΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ. ΠΠ»Ρ Π²ΡΡ ΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ break:
!/bin/bash
for (i=1;i<10;i++)
do
echo ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ΅ΡΡΠΈΠΊΠ° $i
if [[ i -gt 5]]
break
fi
done
Β
Π‘ΠΎ ΡΠΈΠΊΠ»Π°ΠΌΠΈ for ΠΌΡ Π·Π°Π²Π΅ΡΡΠΈΠ»ΠΈ, ΡΠ΅ΠΏΠ΅ΡΡ Π²Ρ Π·Π½Π°Π΅ΡΠ΅ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π²ΡΠ³Π»ΡΠ΄ΡΡ ΠΈ ΡΡΠΎ Ρ Π½ΠΈΠΌΠΈ Π΄Π΅Π»Π°ΡΡ. ΠΠ°Π»ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΠΈΠΊΠ»Ρ while ΠΈ until. ΠΠ½ΠΈ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅ ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½Ρ.
Π¦ΠΈΠΊΠ» While
Π‘ΡΡΡ ΡΠΈΠΊΠ»Π° While Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΎΠ½ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ²ΡΠΎΡΡΡΡΡΡ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΡΡΠ»ΠΎΠ²ΠΈΠ΅, ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π² ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠΈ ΡΠΈΠΊΠ»Π°. ΠΠ΄Π΅ΡΡ Π½Π΅Ρ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΡΡΠ΅ΡΡΠΈΠΊΠΎΠ² ΠΈ Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½Ρ, ΡΠΎ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ ΠΈΡ Π²Π°ΠΌ ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΡΠ°ΠΌΠΈΠΌ. Bash ΡΠΈΠΊΠ» while ΠΈΠΌΠ΅Π΅Ρ ΡΠ°ΠΊΠΎΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
while [ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ]
do
ΠΊΠΎΠΌΠ°Π½Π΄Π°1
ΠΊΠΎΠΌΠ°Π½Π΄Π°2
ΠΊΠΎΠΌΠ°Π½Π΄Π°3
done
ΠΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠ°ΠΊ: ΡΠ½Π°ΡΠ°Π»Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΡΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡ, Π΅ΡΠ»ΠΈ true, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π½Π°Π±ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄, Π·Π°ΡΠ΅ΠΌ ΡΠ½ΠΎΠ²Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ°, ΠΈ ΡΠ°ΠΊ ΠΏΠΎΠΊΠ° ΡΡΠ»ΠΎΠ²ΠΈΠ΅ Π½Π΅ Π²Π΅ΡΠ½Π΅Ρ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ. ΠΡΠΎ Π½Π°ΠΌ ΡΠΎΠΆΠ΅ Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π²ΡΡΡΠ½ΡΡ. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΏΡΠΈΠΌΠ΅Ρ:
vi while.sh
!/bin/bash
x=1
while [ $x -lt 5Β ]
do
echo "ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ΅ΡΡΠΈΠΊΠ°: $x"
x=$(( $x + 1 ))
done
Β
Β
ΠΠ΄Π΅ΡΡ ΡΠ½Π°ΡΠ°Π»Π° ΠΌΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ΅ΡΡΠΈΠΊΠ° Π² Π΅Π΄ΠΈΠ½ΠΈΡΡ, Π·Π°ΡΠ΅ΠΌ, Π² ΡΡΠ»ΠΎΠ²ΠΈΠΈ ΡΡΠ°Π²Π½ΠΈΠ²Π°Π΅ΠΌ Π΅Π³ΠΎ Ρ 5, ΠΏΠΎΠΊΠ° ΡΡΠ΅ΡΡΠΈΠΊ ΠΌΠ΅Π½ΡΡΠ΅ ΠΏΡΡΠΈ Π±ΡΠ΄ΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΈΠ· Π±Π»ΠΎΠΊΠ° do-done. ΠΠΎ Π΅ΡΠ΅ Π² ΡΡΠΎΠΌ Π±Π»ΠΎΠΊΠ΅ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ΅ΡΡΠΈΠΊΠ° Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡΡ, ΡΡΠΎ ΠΌΡ ΠΈ Π΄Π΅Π»Π°Π΅ΠΌ.
Π’Π°ΠΊΠΆΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ while ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΡΡΠΎΠΊ ΠΈΠ· ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°:
vi while.sh
!/bin/bash
hile read line
do
echo $line
done
Β
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ Π½ΠΎΠ²ΡΠ΅ ΡΡΡΠΎΠΊΠΈ ΠΏΠΎΠΊΠ° Π²Ρ Π½Π΅ ΠΏΠ΅ΡΠ΅Π΄Π°Π΄ΠΈΡΠ΅ Π΅ΠΉ ΡΠΈΠΌΠ²ΠΎΠ» ΠΊΠΎΠ½ΡΠ° ΡΠ°ΠΉΠ»Π° Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΡ ΠΊΠ»Π°Π²ΠΈΡ Ctrl+D. ΠΠ΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ ΡΠΈΠΊΠ» while bash Ρ ΠΏΠΎΠΌΠΎΡΡΡ while Π΅ΡΠ΅ ΠΏΡΠΎΡΠ΅ ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΎΠ²Π°ΡΡ:
vi while.sh
while :
do
echo "ΠΠ΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ ΡΠΈΠΊΠ» bash, Π΄Π»Ρ Π²ΡΡ
ΠΎΠ΄Π° Π½Π°ΠΆΠΌΠΈΡΠ΅ Ctrl+C"
done
Π¦ΠΈΠΊΠ» until
ΠΠ°ΠΌ ΠΎΡΡΠ°Π»ΠΎΡΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅ΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΡΠΈΠΊΠ». ΠΡΠΎ ΡΠΈΠΊΠ» until. ΠΠ½ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΡ ΠΎΠΆ Π½Π° while ΠΈ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ ΠΎΡ Π½Π΅Π³ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ°Π±ΠΎΡΠΎΠΉ ΡΡΠ»ΠΎΠ²ΠΈΡ. ΠΡΠ»ΠΈ Π² ΠΏΠ΅ΡΠ²ΠΎΠΌ Π½ΡΠΆΠ½ΠΎ ΡΡΠΎΠ±Ρ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ Π²ΡΠ΅Π³Π΄Π° Π±ΡΠ»ΠΎ ΠΈΡΡΠΈΠ½Π½ΡΠΌ, ΡΠΎ Π·Π΄Π΅ΡΡ Π²ΡΠ΅ Π½Π°ΠΎΠ±ΠΎΡΠΎΡ. Π¦ΠΈΠΊΠ» Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΏΠΎΠΊΠ° ΡΡΠ»ΠΎΠ²ΠΈΠ΅ Π½Π΅Π²Π΅ΡΠ½ΠΎ. Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
until [ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ]
do
ΠΊΠΎΠΌΠ°Π½Π΄Π°1
ΠΊΠΎΠΌΠ°Π½Π΄Π°2
done
ΠΡΠΌΠ°Ρ ΠΏΠΎΡΠ»Π΅ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½ΠΈΡ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΡΠΎ ΡΡΠ΅ΡΡΠΈΠΊΠΎΠΌ Π±ΡΠ΄Π΅Ρ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ½ΡΡΠ½Π΅Π΅ ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ:
!/bin/bash
count=1
until [ $count -gt 10 ]
do
echo "ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ΅ΡΡΠΈΠΊΠ°: $count"
count=$(( $count + 1 ))
done
ΠΡ Π·Π°Π΄Π°Π΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ΅ΡΡΠΈΠΊΠ° 1 ΠΈ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΠΌ Π΅Π³ΠΎ Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡΡ ΠΏΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΡΠΎΡ ΠΎΠ΄Π΅. ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΡΡΠ΅ΡΡΠΈΠΊ Π±ΠΎΠ»ΡΡΠ΅ 10 Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡΡ, ΡΡΠ°Π·Ρ ΡΠΈΠΊΠ» Π±ΡΠ΄Π΅Ρ ΠΎΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½. Π ΡΠΈΠΊΠ»Π°Ρ while ΠΈ until ΡΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ break ΠΈ continue Π΄Π»Ρ Π²ΡΡ ΠΎΠ΄Π° ΠΈΠ· ΡΠΈΠΊΠ»Π° ΠΈ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΏΡΠΎΡ ΠΎΠ΄Π°, Π½ΠΎ ΠΌΡ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ ΡΡΠΎ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ.
ΠΡΠ²ΠΎΠ΄Ρ
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ ΡΠΈΠΊΠ»Ρ Bash, ΠΊΠ°ΠΊ Ρ Π½ΠΈΠΌΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΈ Π² ΠΊΠ°ΠΊΠΈΡ ΡΠΈΡΡΠ°ΡΠΈΡΡ ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ. Π¦ΠΈΠΊΠ»Ρ ΠΌΠΎΠ³ΡΡ ΡΡΠ°ΡΡ ΠΎΡΠ»ΠΈΡΠ½ΡΠΌ ΠΈ Π½Π΅Π·Π°ΠΌΠ΅Π½ΠΈΠΌΡΠΌ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠΌ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΡΠ»ΠΎΠΆΠ½ΡΡ ΡΠΊΡΠΈΠΏΡΠΎΠ² Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΡΠ»ΠΈ Ρ Π²Π°Ρ ΠΎΡΡΠ°Π»ΠΈΡΡ Π²ΠΎΠΏΡΠΎΡΡ, ΡΠΏΡΠ°ΡΠΈΠ²Π°ΠΉΡΠ΅ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ !
3 Π³Π»Π°Π²Π½ΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΠ΅Π΄ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ JavaScript
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ 3 Π³Π»Π°Π²Π½ΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ, Π²ΡΠ·ΡΠ²Π°ΡΡΠΈΠ΅ ΡΠΏΠ°Π΄ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ JavaScript ΠΊΠΎΠ΄Π°, ΡΠ΅ΡΡΠΈΡΡΠ΅ΠΌ ΠΈ ΠΈΠ·Π±Π°Π²Π»ΡΠ΅ΠΌΡΡ ΠΎΡ «Π²ΡΠ΅Π΄Π½ΡΡ ΠΏΡΠΈΠ²ΡΡΠ΅ΠΊ».
Π§ΡΠΎ Π΅ΡΠ»ΠΈ ΠΊΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ECMAScript, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΡΠ°ΠΊ ΠΊΡΠΎΠΏΠΎΡΠ»ΠΈΠ²ΠΎ ΠΈΠ·ΡΡΠ°Π»ΠΈ, β Π½Π΅ ΡΡΠΎ ΠΈΠ½ΠΎΠ΅, ΠΊΠ°ΠΊ ΠΎΠΏΠ°ΡΠ½Π°Ρ Π»ΠΎΠ²ΡΡΠΊΠ° Π΄Π»Ρ ΡΠ½ΠΈΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ JavaScript, ΠΊΡΠ°ΡΠΈΠ²ΠΎ ΡΠΏΠ°ΠΊΠΎΠ²Π°Π½Π½Π°Ρ Π² ΠΎΠ΄Π½ΠΎΡΡΡΠΎΡΠ½ΡΠΉ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΉ ΠΊΠΎΠ΄ ΠΎΠ±ΡΠ°ΡΠ½ΡΡ Π²ΡΠ·ΠΎΠ²ΠΎΠ²?
ΠΡΠ° ΠΈΡΡΠΎΡΠΈΡ Π½Π°ΡΠ°Π»Π°ΡΡ Ρ Π²ΡΡ
ΠΎΠ΄ΠΎΠΌ ES5 ΠΈ Π½ΠΎΠ²ΡΡ
ΡΡΠ½ΠΊΡΠΈΠΉ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² (forEach
, reduce
, map
, filter
ΠΈ Ρ. Π΄.). Π‘ ΡΡΠΈΠΌΠΈ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π»Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎΡΡΡ ΡΠ·ΡΠΊΠ°. Π Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° ΡΡΠ°Π½ΠΎΠ²ΠΈΠ»ΠΎΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ»Π°ΠΆΠ΅Π½Π½ΡΠΌ ΠΈ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠΌ. ΠΠ° ΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠ°Π±ΠΎΡΡ Π²ΡΠ³Π»ΡΠ΄Π΅Π» ΠΏΡΠΎΡΠ΅ ΠΈ ΠΏΠΎΠ½ΡΡΠ½Π΅Π΅.
Π’ΠΎΠ³Π΄Π° ΠΆΠ΅ Π°ΠΊΡΠΈΠ²Π½ΠΎ ΡΠ°Π·Π²ΠΈΠ²Π°Π»Π°ΡΡ ΠΈ Π΄ΡΡΠ³Π°Ρ ΡΡΠ΅Π΄Π° β Node.js. ΠΠ½Π° Π² ΠΊΠΎΡΠ½Π΅ ΠΏΠ΅ΡΠ΅ΡΠΌΠ°ΡΡΠΈΠ²Π°Π»Π° Π²ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ full-stack ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π»Π° Π±ΠΎΠ»Π΅Π΅ ΠΏΠ»Π°Π²Π½ΡΠΉ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ ΠΎΡ front-end ΠΊ back-end.
ΠΠΎΡΡΠΎΠΌΡ Node.js Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌ ECMAScript Π² V8 ΠΏΡΡΠ°Π΅ΡΡΡ Π²ΡΠ±ΠΈΡΡΡΡ Π² Π»ΠΈΠ΄Π΅ΡΡ Π³Π»Π°Π²Π½ΡΡ ΡΠ΅ΡΠ²Π΅ΡΠ½ΡΡ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ. Π Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΠ±Π»Π°Π΄Π°ΡΡ Π²ΡΡΠΎΠΊΠΎΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ. ΠΠΎΠ½Π΅ΡΠ½ΠΎ ΠΆΠ΅, Π½ΡΠΆΠ½ΠΎ ΡΡΠΈΡΡΠ²Π°ΡΡ ΠΈ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π΄ΡΡΠ³ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ². Π Π΄Π°, ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ° Π΅ΡΠ΅ Π½Π΅ ΠΏΡΠΈΠ΄ΡΠΌΠ°Π»ΠΈ.
Π’Π°ΠΊ Π²ΡΠ΅ ΠΆΠ΅, JavaScript Ρ Π΅Π³ΠΎ Π³ΠΎΡΠΎΠ²ΡΠΌΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡΠΌΠΈ β ΡΡΠΎ ΠΏΠΎΠ»ΡΠ·Π° ΠΈΠ»ΠΈ Π²ΡΠ΅Π΄ Π΄Π»Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ?
Π‘ ΡΠΎΡΡΠΎΠΌ ΠΌΠΎΡΠ½ΠΎΡΡΠΈ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΠ² ΠΈ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠ΅ΡΠΈ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠ°Ρ ΡΠ°ΡΡΡ JavaScript ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΠΎΡΠ»ΠΈΡΠ½ΡΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ/ΠΏΡΠΎΡΠΌΠΎΡΡΠ°. ΠΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΡΡΡ Π½Π° JavaScript ΠΏΡΠΈ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ Π²ΡΡΠΎΠΊΠΎΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΡΠΎ ΡΠ»ΠΎΠΆΠ½ΠΎΠΉ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠΎΠΉ?
Π§ΡΠΎΠ±Ρ ΠΎΡΠ²Π΅ΡΠΈΡΡ Π½Π° ΡΡΠΎΡ Π²ΠΎΠΏΡΠΎΡ, ΠΏΡΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡΡΠ΅ΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ (Π·Π°ΡΠΈΠΊΠ»ΠΈΠ²Π°Π½ΠΈΠ΅, Π΄ΡΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈ ΠΏΠ΅ΡΠ΅Π±ΠΎΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²). ΠΡΠ΅ ΡΠ΅ΡΡΡ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΠ»ΠΈΡΡ Π½Π° macOS Π² Node.js v10.11.0 ΠΈ Π±ΡΠ°ΡΠ·Π΅ΡΠ΅ Chrome.
1. ΠΠ°ΡΠΈΠΊΠ»ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π°
ΠΠ΅ΡΠ²ΠΎΠ΅, ΡΡΠΎ ΠΏΡΠΈΡ
ΠΎΠ΄ΠΈΡ Π½Π° ΡΠΌ, β ΡΡΠΎ Π½Π°ΠΉΡΠΈ ΡΡΠΌΠΌΡ ΠΌΠ°ΡΡΠΈΠ²Π° Ρ 10 ΡΡΡ. ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ. ΠΡΠΈΠΌΠ΅Ρ Π²Π·ΡΡ ΠΈΠ· ΡΠ΅Π°Π»ΡΠ½ΠΎΠΉ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ, ΠΊΠΎΠ³Π΄Π° Π½ΡΠΆΠ½ΠΎ ΠΈΠ·Π²Π»Π΅ΡΡ ΠΎΠ³ΡΠΎΠΌΠ½ΡΡ ΡΠ°Π±Π»ΠΈΡΡ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
ΠΈ ΠΏΡΠΎΡΡΠΌΠΌΠΈΡΠΎΠ²Π°ΡΡ Π΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, Π½Π΅ ΡΠΎΠ·Π΄Π°Π²Π°Ρ Π»ΠΈΡΠ½Π΅Π³ΠΎ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ
.
ΠΡΠΈ ΡΡΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ
10 ΡΡΡ. ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΠ΅ΡΠ΅Π· ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ for
, for-of
, while
, forEach
ΠΈ reduce
10 ΡΡΡ. ΡΠ°Π·. ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π½ΠΈΠΆΠ΅:
For Loop, ΡΡΠ΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ ΡΠΈΠΊΠ»Π°: ~10 ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄ For-Of, ΡΡΠ΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ ΡΠΈΠΊΠ»Π°: ~110 ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄ ForEach, ΡΡΠ΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ ΡΠΈΠΊΠ»Π°: ~77 ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄ While, ΡΡΠ΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ ΡΠΈΠΊΠ»Π°: ~11 ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄ Reduce, ΡΡΠ΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ ΡΠΈΠΊΠ»Π°: ~113 ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄
ΠΡΠ»ΠΈ ΠΏΠΎΠ³ΡΠ³Π»ΠΈΡΡ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΡΠΌΠΌΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ²Ρ, ΡΠΎ ΡΠ°ΠΌΡΠΌ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΌ ΡΠΎΠ²Π΅ΡΠΎΠΌ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° reduce
. ΠΠ΄Π½Π°ΠΊΠΎ Π΄Π°Π½Π½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΡΠ°ΠΉΠ½Π΅ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΡΠΌΠΈ. ΠΠΎΠΏΡΡΠΊΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π·Π°Π΄Π°ΡΡ ΡΠ΅ΡΠ΅Π· forEach
ΡΠ°ΠΊΠΆΠ΅ Π½Π΅ ΡΠ²Π΅Π½ΡΠ°Π»ΠΈΡΡ ΡΡΠΏΠ΅Ρ
ΠΎΠΌ. ΠΠ°ΠΆΠ΅ Π² Π½ΠΎΠ²Π΅ΠΉΡΠ΅ΠΌ for-of
(ES6) Ρ
ΡΠΎΠΌΠ°Π΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ.
ΠΠΊΠ°Π·Π°Π»ΠΎΡΡ, ΡΡΠΎ Π»ΠΈΠ΄Π΅ΡΠ°ΠΌΠΈ ΠΏΠΎ ΡΠ°ΡΡΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ (Π² 10 ΡΠ°Π· Π±ΡΡΡΡΠ΅Π΅ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ
!) ΡΡΠ°Π»ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠ΅Π½Π½ΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ while
ΠΈ for
.
ΠΠ°ΠΊ ΠΆΠ΅ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ, ΡΡΠΎ Π½ΠΎΠ²Π΅ΠΉΡΠ΅Π΅ ΠΈ ΡΠ°Π·ΡΠ΅ΠΊΠ»Π°ΠΌΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π°ΡΡΠΎΠ»ΡΠΊΠΎ ΡΠΈΠ»ΡΠ½ΠΎ ΡΠΎΡΠΌΠΎΠ·ΠΈΡ JavaScript? ΠΠ΅Π»ΠΎ ΡΡΡ Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ: reduce
ΠΈ forEach
ΡΡΠ΅Π±ΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ·ΠΎΠ²Π°. ΠΠ°Π½Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎ ΠΈ Π·Π°ΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΡΡΠΊ. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΠΎΡΠΌΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΡΠ»ΠΎΠ²Π»Π΅Π½ΠΎ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ΅ΠΉ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΎΠΉ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° (ΡΠΌ. ΡΡΡ).
2. ΠΡΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π°
ΠΡΠΎΠ΄Π΅ Π±Ρ Π½ΠΈΡΠ΅Π³ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎΠ³ΠΎ Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΏΡΠ½ΠΊΡΠ΅ Π½Π΅Ρ. ΠΠΎ ΡΡΠΎ ΠΎΡΠ½ΠΎΠ²Π° Π½Π΅ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΡΡ Π²ΡΡ ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π³Π΅Π½Π΅ΡΠΈΡΡΡΡΡΡ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²Ρ ΠΎΠ΄Π½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ.
ΠΡΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ: Π΄ΡΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ 10 ΡΡΡ. ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² ΠΈΠ· 10 ΡΡΡ. ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π»ΡΡΡΠ΅ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΡ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ. ΠΠΎΠ²ΠΎΠΌΠΎΠ΄Π½Π°Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ spread ΠΈΠ· [β¦arr]
, Array ΠΈΠ· Array.from(arr)
Π² ES6 ΠΈ map arr.map(x => x)
ΠΈΠ· ES5 ΠΏΠΎΠ·ΠΎΡΠ½ΠΎ ΠΏΡΠΎΠΈΠ³ΡΡΠ²Π°Π»ΠΈ «ΡΡΠ°ΡΠΈΡΠΊΠ°ΠΌ» slice arr.slice()
ΠΈ concatenate [].concat(arr)
.
ΠΡΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΡΠ΅Π· Slice, ΡΡΠ΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ: ~367 ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄ ΠΡΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΡΠ΅Π· Map, ΡΡΠ΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ: ~469 ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄ ΠΡΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΡΠ΅Π· Spread, ΡΡΠ΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ: ~512 ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄ ΠΡΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΡΠ΅Π· Conct, ΡΡΠ΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ: ~366 ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄ ΠΡΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΡΠ΅Π· Array From, ΡΡΠ΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ: ~1,436 ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄ ΠΡΠ±Π»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΡΡΡΠ½ΡΡ, ΡΡΠ΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ: ~412 ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄
3. ΠΠ΅ΡΠ΅Π±ΠΎΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²
ΠΡΠ΅ ΠΎΠ΄Π½Π° ΠΏΠΎΠΏΡΠ»ΡΡΠ½Π°Ρ ΡΠ΅ΠΌΠ° β ΠΏΠ΅ΡΠ΅Π±ΠΎΡ (ΠΈΡΠ΅ΡΠ°ΡΠΈΡ) ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ². ΠΠ½ Π½ΡΠΆΠ΅Π½ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² JSON Π±Π΅Π· ΠΏΠΎΠΈΡΠΊΠ° ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠ»ΡΡΠ°. ΠΠ΄Π΅ΡΡ ΡΠΎΠΆΠ΅ Π΅ΡΡΡ ΡΠ²ΠΎΠΈ ΠΏΠΎΡΠ΅ΡΠ½ΡΠ΅ Π²Π΅ΡΠ΅ΡΠ°Π½Ρ β for-in for(let key in obj)
ΠΈΠ»ΠΈ Object.keys(obj)
(Π² ES6). Π‘ΡΠΎΠΈΡ Π²ΡΠΏΠΎΠΌΠ½ΠΈΡΡ ΠΈ Object.entries(obj)
(Π² ES8), Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠΈΠΉ ΠΊΠ»ΡΡΠΈ ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ.
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ 10 ΡΡΡ. ΠΈΡΠ΅ΡΠ°ΡΠΈΠΉ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΈΠ· 1 ΡΡΡ. ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΠΊΠ»ΡΡΠ΅ΠΉ ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ:
ΠΡΠ΅ΡΠ°ΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠ΅ΡΠ΅Π· For-In, ΡΡΠ΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ: ~240 ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄ ΠΡΠ΅ΡΠ°ΡΠΈΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΊΠ»ΡΡΠ΅ΠΉ, ΡΡΠ΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ: ~294 ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄ ΠΡΠ΅ΡΠ°ΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠ΅ΡΠ΅Π· For-Of, ΡΡΠ΅Π΄Π½Π΅Π΅ Π²ΡΠ΅ΠΌΡ: ~535 ΠΌΠΈΠΊΡΠΎΡΠ΅ΠΊΡΠ½Π΄
Π ΠΏΠ΅ΡΠ²ΡΡ Π΄Π²ΡΡ Π²Π°ΡΠΈΠ°Π½ΡΠ°Ρ Π²ΠΌΠ΅ΡΡΠΎ ΠΏΡΡΠΌΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ° ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π±Π΅Π· ΠΊΠ»ΡΡΠ΅ΠΉ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΠΌΡΠΉ ΠΌΠ°ΡΡΠΈΠ² Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ. ΠΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ Π²Π°ΡΠΈΠ°Π½Ρ Π²Π΅ΡΡΠΌΠ° ΡΠΎΠΌΠ½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΡΠ»ΠΈ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π²Π°ΠΆΠ½Π° Π²ΡΡΠΎΠΊΠ°Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, ΠΈΠ»ΠΈ ΡΠ΅ΡΠ²Π΅ΡΡ ΡΡΠ°Π»ΠΊΠΈΠ²Π°ΡΡΡΡ Ρ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΎΠΉ, ΡΠΎ Π·Π°Π±ΡΠ΄ΡΡΠ΅ ΠΏΡΠΎ Π²ΡΠ΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠ΅/Π»Π΅Π³ΠΊΠΎ ΡΠΈΡΠ°Π΅ΠΌΡΠ΅/ΡΠΈΡΡΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ. ΠΠ½ΠΈ ΠΏΡΠΈΠ²ΠΎΠ΄ΡΡ ΠΊ ΡΠΏΠ°Π΄Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈΒ JavaScript ΠΊΠΎΠ΄Π° Π² 10 ΡΠ°Π·!
ΠΡΠ΅ΠΊΡΠ°ΡΠ°ΠΉΡΠ΅ Π±Π΅Π·Π΄ΡΠΌΠ½ΠΎ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΌ ΡΡΠ΅Π½Π΄Π°ΠΌ. ΠΠΎΠ΄Π±ΠΈΡΠ°ΠΉΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΌΠΈ ΡΠ΅Π»ΡΠΌΠΈ. ΠΠ»Ρ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π»Π΅Π³ΠΊΠΈΠΉ ΠΈ ΡΠΈΡΠ°Π±Π΅Π»ΡΠ½ΡΠΉ ΠΊΠΎΠ΄. ΠΠ»Ρ Π²ΡΡΠΎΠΊΠΎΠ½Π°Π³ΡΡΠΆΠ΅Π½Π½ΡΡ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ² ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ ΠΎΠ±ΡΠ΅ΠΌΠ½ΠΎΠΉ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΎΠΉ ΡΠ°ΡΡΡΡ Π²ΡΠ±ΠΈΡΠ°ΠΉΡΠ΅ ΡΡΠΎ-ΡΠΎ Π΄ΡΡΠ³ΠΎΠ΅.
ΠΠ΅ΡΠ΅Π²ΠΎΠ΄ ΡΡΠ°ΡΡΠΈ Yotam Kadishay:Β 3 JavaScript Performance Mistakes You Should Stop Doing
ΠΠ°ΠΊ ΠΏΠ΅ΡΠ΅Π±ΠΈΡΠ°ΡΡ ΠΌΠ°ΡΡΠΈΠ²Ρ Π² PHP
PHP ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΠΎΠ±Ρ
ΠΎΠ΄Π° ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΊΠ°ΠΊ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ ΠΌΠ°ΡΡΠΈΠ²Π°, ΡΠ°ΠΊ ΠΈ ΡΠ·ΡΠΊΠΎΠ²ΡΡ
ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΉ: array_walk
, array_map
, array_filter
, foreach
, list
/ ΠΊΠ°ΠΆΠ΄ΡΠΉ
ΠΈ Π΄Π»Ρ
ΡΠΈΠΊΠ»ΠΎΠ². ΠΡ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅ΠΌ ΠΈ ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΠΌ foreach
ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΡΠΈΠΊΠ»Π° Π½Π° ΡΡΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅. ΠΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ Π½Π° Π΄ΡΡΠ³ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅.
foreach
Π¦ΠΈΠΊΠ» PHP foreach
ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠ΄ΠΎΠ±Π½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ° ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ².ΠΡΡΡ Π΄Π²Π΅ ΡΠΎΡΠΌΡ: ΠΎΠ΄Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΊΠ»ΡΡ ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ ΠΌΠ°ΡΡΠΈΠ²Π°, Π° Π΄ΡΡΠ³Π°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅. Π‘Π½Π°ΡΠ°Π»Π° ΠΌΡ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅ΠΌ ΡΠΎΡΠΌΡ key => value
:
$ pets = ['ΠΠΎΡΠΈ', 'ΠΠΈΠΊΠΈ', 'ΠΡΠ΅ΠΎΠ»', 'lab' => 'ΠΠΈΠ½Π½ΠΈ'];
foreach ($ pets as $ key => $ val) {
echo "$ key => $ val \ n";
}
Π ΡΠ΅Π»Π΅ ΡΠΈΠΊΠ»Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ echo
Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΊΠ»ΡΡΠ° ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΌΠ°ΡΡΠΈΠ²Π° ΠΏΠΎ ΠΎΡΠ΅ΡΠ΅Π΄ΠΈ.
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ foreach
ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π°:
$ pets = ['ΠΠΎΡΠΈ', 'ΠΠΈΠΊΠΈ', 'ΠΡΠ΅ΠΎΠ»', 'lab' => 'ΠΠΈΠ½Π½ΠΈ'];
foreach ($ pets as $ val) {
echo "$ val \ n";
}
ΠΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ foreach
ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΌΠ°ΡΡΠΈΠ²Π°, ΠΏΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΠΎΠ½Π° ΠΏΡΠΎΡ
ΠΎΠ΄ΠΈΡ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π·Π½Π°ΠΊΠ° ΡΡΡΠ»ΠΊΠΈ ( ΠΈ
):
$ ar = [1, 2, 3, 4];
foreach ($ ar as & $ value) {
$ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ * = 2;
}
print_r ($ ar);
Π½Π΅ Π·Π°Π΄Π°Π½ΠΎ ($ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅);
Π»ΠΈΡΡ / ΠΏΠΎ
ΠΡΡΠ³ΠΎΠΉ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΎΠ±Ρ
ΠΎΠ΄Π° ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΈΠΊΠ» ΠΈ
Ρ ΡΠ·ΡΠΊΠΎΠ²ΠΎΠΉ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠ΅ΠΉ list
ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ
.Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π΄ΠΎΡΡΠΈΠ³Π°Π΅ΡΡΡ ΡΠΎΡ ΠΆΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ, ΡΡΠΎ ΠΈ Π² ΠΏΠ΅ΡΠ²ΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ
, ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ Π²ΡΡΠ΅:
$ pets = ['ΠΠΎΡΠΈ', 'ΠΠΈΠΊΠΈ', 'ΠΡΠ΅ΠΎΠ»', 'lab' => 'ΠΠΈΠ½Π½ΠΈ'];
ΡΠ±ΡΠΎΡΠΈΡΡ ($ pets);
while (list ($ key, $ val) = each ($ pets)) {
echo "$ key => $ val \ n";
}
ΠΡΠΈ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ ΠΏΠΎ ΠΌΠ°ΡΡΠΈΠ²Ρ ΡΡΠ½ΠΊΡΠΈΡ , ΠΊΠ°ΠΆΠ΄Π°Ρ ΠΈΠ·
ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ° ΡΠ΅ΠΊΡΡΠ΅ΠΉ ΠΏΠ°ΡΡ ΠΊΠ»ΡΡ-Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΠΌΠ°ΡΡΠΈΠ². Π‘ΠΏΠΈΡΠΎΠΊ Π€ΡΠ½ΠΊΡΠΈΡ
ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΡΠΈΡΠ²ΠΎΠ΅Π½ΠΈΡ ΠΊΠ»ΡΡΠ° ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ.Π¦ΠΈΠΊΠ» ΠΈ
Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Π΅ΡΡΡ, ΠΊΠΎΠ³Π΄Π° Π΄ΠΎΡΡΠΈΠ³Π°Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅. Π€ΡΠ½ΠΊΡΠΈΡ reset
Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ Π΄Π»Ρ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ ΠΌΠ°ΡΡΠΈΠ²Π° Π½Π° ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅.
Π‘ΠΏΠΈΡΠΎΠΊ
/ ΠΠ°ΠΆΠ΄Π°Ρ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ
ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΊΠ°ΠΊ Ρ ΠΊΠ»ΡΡΠΎΠΌ, ΡΠ°ΠΊ ΠΈ ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ, ΠΈΠ»ΠΈ ΠΏΡΠΎΡΡΠΎ ΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ. Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ Π΄Π°Π΅Ρ ΡΠΎΡ ΠΆΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ, ΡΡΠΎ ΠΈ Π²ΡΠΎΡΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Ρ foreach
, ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΡΠΉ Π²ΡΡΠ΅:
$ pets = ['ΠΠΎΡΠΈ', 'ΠΠΈΠΊΠΈ', 'ΠΡΠ΅ΠΎΠ»', 'lab' => 'ΠΠΈΠ½Π½ΠΈ'];
ΡΠ±ΡΠΎΡΠΈΡΡ ($ pets);
while (list (, $ val) = each ($ pets)) {
echo "$ val \ n";
}
Π΄Π»Ρ
Π¦ΠΈΠΊΠ» for
ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ° ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² Ρ ΡΠΈΡΠ»ΠΎΠ²ΠΎΠΉ ΠΈΠ½Π΄Π΅ΠΊΡΠ°ΡΠΈΠ΅ΠΉ, ΠΊΠ°ΠΊ ΠΌΡ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅ΠΌ Π·Π΄Π΅ΡΡ:
$ ar = ['Π ΡΠ΄ΠΈ', 'ΠΠΎΡΠΈ', 'ΠΡΠ΅ΠΎΠ»', 'ΠΠΈΠΊΠΈ'];
for ($ i = 0, $ len = count ($ ar); $ i <$ len; $ i ++) {
echo "$ ar [$ i] \ n";
}
Π ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π²ΡΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ echo
Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ ΡΠΈΠΊΠ»Π°.ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΠΊΠ» Π΄Π»Ρ
Π΄Π»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅:
$ ar = [1, 2, 3, 4];
for ($ i = 0, $ len = count ($ ar); $ i <$ len; $ i ++) {
$ ar [$ i] * = 2;
}
print_r ($ ar);
Π€ΡΠ½ΠΊΡΠΈΠΈ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ ΠΌΠ°ΡΡΠΈΠ²Π° PHP
Π£Π·Π½Π°ΠΉΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΠΎΠ± ΠΎΠ±Ρ
ΠΎΠ΄Π΅ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² Π² PHP Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ: array_walk
, array_map
ΠΈ array_filter
.
ΠΠ°Π²Π΅ΡΡ
PHP foreach
Π Π΅Π·ΡΠΌΠ΅ : Π² ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ Π²Ρ ΡΠ·Π½Π°Π΅ΡΠ΅, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ PHP foreach
Π΄Π»Ρ ΡΠΈΠΊΠ»ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π°.
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ PHP foreach
PHP ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π²Π°ΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ foreach
, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΈΡΠ΅ΡΠ°ΡΠΈΡ ΠΏΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌ ΠΌΠ°ΡΡΠΈΠ²Π°, Π±ΡΠ΄Ρ ΡΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ»ΠΈ Π°ΡΡΠΎΡΠΈΠ°ΡΠΈΠ²Π½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ².
ΠΠΏΠ΅ΡΠ°ΡΠΎΡ foreach
Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΈΡΠ΅ΡΠ°ΡΠΈΡ ΠΏΠΎ Π²ΡΠ΅ΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡ. ΠΠ½ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Ρ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΈ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌ. Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, Π²Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π·Π°ΡΠ°Π½Π΅Π΅ Π·Π½Π°ΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π² ΠΌΠ°ΡΡΠΈΠ²Π΅.
ΠΠ° ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ Π±Π»ΠΎΠΊ-ΡΡ
Π΅ΠΌΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ foreach
:
PHP foreach Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌΠΈ
ΠΠ»Ρ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ° Π²ΡΠ΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
Π―Π·ΡΠΊ ΠΊΠΎΠ΄Π°: HTML, XML (xml)
Php foreach ($ array_name ΠΊΠ°ΠΊ $ element) { }
ΠΠΎΠ³Π΄Π° PHP Π²ΡΡΡΠ΅ΡΠ°Π΅Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ foreach
, ΠΎΠ½ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅Ρ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ, ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ Π·Π° , ΠΊΠ°ΠΊ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ
( $ element
).
ΠΠ° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ PHP ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ $ element
. ΠΡΠ»ΠΈ PHP Π΄ΠΎΡΡΠΈΠ³Π°Π΅Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°, ΡΠΈΠΊΠ» Π·Π°Π²Π΅ΡΡΠ°Π΅ΡΡΡ.
Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ foreach
ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π° $ colors
:
Π―Π·ΡΠΊ ΠΊΠΎΠ΄Π°: HTML, XML (xml)
Php $ colors = ['ΠΊΡΠ°ΡΠ½ΡΠΉ', 'Π·Π΅Π»Π΅Π½ΡΠΉ', 'ΡΠΈΠ½ΠΈΠΉ']; foreach ($ colors ΠΊΠ°ΠΊ $ color) { echo $ color. '
'; }
ΠΡΠ²ΠΎΠ΄:
Π―Π·ΡΠΊ ΠΊΠΎΠ΄Π°: ΠΎΡΠΊΡΡΡΡΠΉ ΡΠ΅ΠΊΡΡ (plaintext)
ΠΊΡΠ°ΡΠ½ΡΠΉ Π·Π΅Π»Π΅Π½ΡΠΉ ΡΠΈΠ½ΠΈΠΉ
PHP foreach Ρ Π°ΡΡΠΎΡΠΈΠ°ΡΠΈΠ²Π½ΡΠΌ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠΌ
ΠΠ»Ρ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π°ΡΡΠΎΡΠΈΠ°ΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
Π―Π·ΡΠΊ ΠΊΠΎΠ΄Π°: HTML, XML (xml)
php foreach ($ ΠΈΠΌΡ_ΠΌΠ°ΡΡΠΈΠ²Π° ΠΊΠ°ΠΊ $ key => $ value) { }
ΠΠΎΠ³Π΄Π° PHP Π²ΡΡΡΠ΅ΡΠ°Π΅Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ foreach
, ΠΎΠ½ ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΊ ΠΏΠ΅ΡΠ²ΠΎΠΌΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΈ Π½Π°Π·Π½Π°ΡΠ°Π΅Ρ:
- ΠΠ»ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ
$ key
. - ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ
$ value
.
ΠΠ° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ PHP Π½Π°Π·Π½Π°ΡΠ°Π΅Ρ ΠΊΠ»ΡΡ ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ ( $ ΠΊΠ»ΡΡ
ΠΈ $ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅
), ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π·Π° ΠΊΠ°ΠΊ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ
. ΠΡΠ»ΠΈ Π΄ΠΎΡΡΠΈΠ³Π½ΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ, PHP Π·Π°Π²Π΅ΡΡΠ°Π΅Ρ ΡΠΈΠΊΠ».
Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ foreach
Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π° captials
:
Π―Π·ΡΠΊ ΠΊΠΎΠ΄Π°: HTML, XML (xml)
Php $ capitals = [ 'Japan' => 'Π’ΠΎΠΊΠΈΠΎ', 'France' => 'ΠΠ°ΡΠΈΠΆ', 'ΠΠ΅ΡΠΌΠ°Π½ΠΈΡ' => 'ΠΠ΅ΡΠ»ΠΈΠ½', 'United Kingdom' => 'ΠΠΎΠ½Π΄ΠΎΠ½', 'United States' => 'ΠΠ°ΡΠΈΠ½Π³ΡΠΎΠ½ Π.Π‘. ' ]; foreach ($ capitals as $ country => $ capital) { echo "Π‘ΡΠΎΠ»ΠΈΡΠ° {$ country} - $ capital". '
'; }
ΠΡΠ²ΠΎΠ΄:
Π―Π·ΡΠΊ ΠΊΠΎΠ΄Π°: ΠΎΡΠΊΡΡΡΡΠΉ ΡΠ΅ΠΊΡΡ (ΠΎΡΠΊΡΡΡΡΠΉ ΡΠ΅ΠΊΡΡ)
Π‘ΡΠΎΠ»ΠΈΡΠ° Π―ΠΏΠΎΠ½ΠΈΠΈ - Π’ΠΎΠΊΠΈΠΎ. Π‘ΡΠΎΠ»ΠΈΡΠ° Π€ΡΠ°Π½ΡΠΈΠΈ - ΠΠ°ΡΠΈΠΆ. Π‘ΡΠΎΠ»ΠΈΡΠ° ΠΠ΅ΡΠΌΠ°Π½ΠΈΠΈ - ΠΠ΅ΡΠ»ΠΈΠ½. Π‘ΡΠΎΠ»ΠΈΡΠ° Π‘ΠΎΠ΅Π΄ΠΈΠ½Π΅Π½Π½ΠΎΠ³ΠΎ ΠΠΎΡΠΎΠ»Π΅Π²ΡΡΠ²Π° - ΠΠΎΠ½Π΄ΠΎΠ½. Π‘ΡΠΎΠ»ΠΈΡΠ° Π‘Π¨Π - ΠΠ°ΡΠΈΠ½Π³ΡΠΎΠ½, ΠΎΠΊΡΡΠ³ ΠΠΎΠ»ΡΠΌΠ±ΠΈΡ
Π‘Π²ΠΎΠ΄ΠΊΠ°
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅
foreach ($ array_name ΠΊΠ°ΠΊ $ element)
Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° - ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅
foreach ($ array_name as $ key => $ value)
Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π°ΡΡΠΎΡΠΈΠ°ΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°.
ΠΡ Π½Π°ΡΠ»ΠΈ ΡΡΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌ?
PHP 7.x - P32: ΡΠΈΠΊΠ» ΠΏΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΠΊΠ» for Π΄Π»Ρ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈβ¦ | Π°Π²ΡΠΎΡ: Dino Cajic
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΠΊΠ» for Π΄Π»Ρ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ ΠΏΠΎ ΠΌΠ°ΡΡΠΈΠ²Ρ, Π½ΠΎ ΡΡΠΎΠ±Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΈΡΡΡ, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΠΊΠ» foreach . Π¦ΠΈΠΊΠ» foreach ΠΈΠΌΠ΅Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ.
foreach ($ array as $ key => $ value)
ΠΡ ΠΏΡΠΎΡΠΈΡΠ°Π΅ΡΠ΅ ΡΡΡΡΠΊΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
- ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΊΠ°ΠΊ ΠΊΠ»ΡΡ / Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅β¦ ΠΈΠ»ΠΈ
- ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ°ΡΡ ΠΊΠ»ΡΡ / Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π²Π½ΡΡΡΠΈ ΠΌΠ°ΡΡΠΈΠ²Π°.
ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΡΠΈΠΊΠ» foreach Π±ΡΠ΄Π΅Ρ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡΡ ΡΠ΅ΡΠ΅Π· ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΌΠ°ΡΡΠΈΠ²Π°, ΠΈ Ρ Π²Π°Ρ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ°ΡΠ΅ ΠΊΠ»ΡΡ / Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°. ΠΡΠΎ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΈΠΌΠ΅Π΅ΡΠ΅ Π΄Π΅Π»ΠΎ Ρ Π°ΡΡΠΎΡΠΈΠ°ΡΠΈΠ²Π½ΡΠΌΠΈ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌΠΈ. ΠΡΠ»ΠΈ ΠΊΠ»ΡΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΡΠΎΠΊΠΎΠΉ, Π²Ρ Π½Π΅ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Ρ ΡΠΈΡΠ»ΠΎΠ²ΡΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠΌ.
ΠΠ½ΠΎΠ³Π΄Π° Π½ΡΠΆΠ½ΠΎ Π΅ΡΠ΅ ΠΈ ΠΊΠ»ΡΡ Π²ΡΠ²Π΅ΡΡΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ Π²Ρ Ρ ΡΠ°Π½ΠΈΡΠ΅ ΡΠΏΠΈΡΠΎΠΊ Π΄Π΅Π» Π²Π½ΡΡΡΠΈ Π°ΡΡΠΎΡΠΈΠ°ΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°, Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΊΠ»ΡΡ - ΡΡΠΎ Π΄Π΅Π½Ρ Π½Π΅Π΄Π΅Π»ΠΈ. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Π°ΠΌ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ ΠΊΠ»ΡΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.ΠΡΠ»ΠΈ Π²Ρ ΡΡΠΎΠ³ΠΎ Π½Π΅ ΡΠ΄Π΅Π»Π°Π΅ΡΠ΅, ΡΡΡΡΠΊΡΡΡΠ° ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ foreach ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΎΠΊΡΠ°ΡΠ΅Π½Π°.
foreach ($ array as $ value)
ΠΡΠΈΠ²Π΅Π΄Π΅Π½Π½Π°Ρ Π²ΡΡΠ΅ ΡΡΡΡΠΊΡΡΡΠ° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡ Π²Π°ΠΌ Π΄ΠΎΡΡΡΠΏ ΡΠΎΠ»ΡΠΊΠΎ ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°. Π£ Π²Π°Ρ ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ Π΅ΡΡΡ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ° ΠΌΠ°ΡΡΠΈΠ²Π°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΠΌΠ΅Π΅Ρ Π»ΠΈΠ±ΠΎ Π½Π΅ΡΠΈΡΠ»ΠΎΠ²ΡΠ΅ ΠΊΠ»ΡΡΠΈ, Π»ΠΈΠ±ΠΎ ΡΠΈΡΠ»ΠΎΠ²ΡΠ΅, Π½ΠΎ Π½Π΅ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΊΠ»ΡΡΠΈ.
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ Π½Π° ΠΏΡΠΈΠΌΠ΅Ρ ΡΠΈΠΊΠ»Π° foreach , ΠΏΠ΅ΡΠ΅Π±ΠΈΡΠ°ΡΡΠ΅Π³ΠΎ ΠΎΠ±ΡΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ², ΠΈΠΌΠ΅ΡΡΠΈΠΉ ΡΠΈΡΠ»ΠΎΠ²ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ.
ΠΡ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΠΊΠ» Π΄Π»Ρ , ΡΡΠΎΠ±Ρ ΠΏΡΠΎΠΉΡΠΈ ΡΠ΅ΡΠ΅Π· ΠΌΠ°ΡΡΠΈΠ², ΠΈΠ»ΠΈ ΠΌΡ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ ΠΏΠΎΠΉΡΠΈ Ρ ΡΠΈΠΊΠ»ΠΎΠΌ foreach .
ΠΠ°ΠΊ Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ Π²ΡΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ°, Ρ ΡΠΈΠΊΠ»ΠΎΠΌ foreach ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡΠ΅. ΠΠ°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ count () , ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π²Π½ΡΡΡΠΈ ΠΌΠ°ΡΡΠΈΠ²Π°. ΠΠ°ΠΌ ΡΠ°ΠΊΠΆΠ΅ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΡΠ΅ΡΡΠΈΠΊΠ° ( $ i ), ΡΡΠΎΠ±Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ, Π² ΠΊΠ°ΠΊΠΎΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠ΅ ΠΌΡ ΡΠ°Π±ΠΎΡΠ°Π΅ΠΌ. PHP Π΄Π΅Π»Π°Π΅Ρ Π²ΡΠ΅ ΡΡΠΎ Π·Π° Π½Π°Ρ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΠΈΠΊΠ» foreach .
Π Π°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Ρ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠΉ Π²ΡΡΠ΅ ΠΏΡΠΈΠΌΠ΅Ρ, PHP:
- ΠΡΡΡΠ΅ΡΠ°Π΅Ρ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ foreach .ΠΠ½ Π·Π½Π°Π΅Ρ, ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅Π±ΠΈΡΠ°ΡΡ ΠΌΠ°ΡΡΠΈΠ².
- Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π²Π½ΡΡΡΠΈ ΡΠΈΠΊΠ»Π° foreach Π³ΠΎΠ²ΠΎΡΠΈΡ, ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΌΠ°ΡΡΠΈΠ²Π°.
- ΠΠΎ Π²ΡΠ΅ΠΌΡ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ PHP ΠΈΠΌΠ΅Π΅Ρ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΏΠ΅ΡΠ²ΠΎΠΌΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ. ΠΠΎΠ³Π΄Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ echo , ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ $ value ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΠΏΠ΅ΡΠ²ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π²Π½ΡΡΡΠΈ ΠΌΠ°ΡΡΠΈΠ²Π°. ΠΡΠ°ΠΊ, PHP ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ Β«ΠΊΠΎΠ³ΡΠΈ ΠΌΡΡΠΎΡΡΠ±ΠΊΠΈΒ».
- PHP Π΄ΠΎΡΡΠΈΠ³Π°Π΅Ρ ΠΊΠΎΠ½ΡΠ° ΡΠ΅Π»Π° ΡΠΈΠΊΠ»Π° ΠΈ ΠΏΠΎΠ²ΡΠΎΡΡΠ΅Ρ ΠΏΡΠΎΡΠ΅ΡΡ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ Π½Π΅ ΠΎΡΡΠ°Π½Π΅ΡΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ².
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° foreach Π²Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡΡΡΡ ΠΎ ΡΠΎΠΌ, Π±ΡΠ΄Π΅Ρ Π»ΠΈ Π²ΡΠ±ΡΠ°Π½Π½ΠΎΠ΅ Π²Π°ΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π²ΡΡ ΠΎΠ΄ΠΈΡΡ Π·Π° Π³ΡΠ°Π½ΠΈΡΡ. PHP Π±ΡΠ΄Π΅Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΡΡΠΎ Π·Π° Π²Π°Ρ.
ΠΠ»Π΅ΠΌΠ΅Π½ΡΡ $ key ΠΈ $ value Π²Π½ΡΡΡΠΈ ΡΡΡΡΠΊΡΡΡΡ ΡΠΈΠΊΠ»Π° foreach Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ ΠΊΠ»ΡΡΠΎΠΌ / Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ , Π° Π½Π΅ . ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°Π·ΡΠ²Π°ΡΡ ΠΈΡ ΠΊΠ°ΠΊ Ρ ΠΎΡΠΈΡΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ Ρ Π½Π°Ρ Π΅ΡΡΡ ΡΡΠ΄ Π°Π²ΡΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ. ΠΠΌΠ΅ΡΡΠΎ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π½Π°Π·ΡΠ²Π°ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½Ρ $ value , ΠΌΡ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ Π½Π°Π·Π²Π°ΡΡ Π΅Π³ΠΎ $ car ΠΈ ΡΠ΅ΡΠΊΠΎ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ.
ΠΡΠΎ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅Π³ΡΠ΅ ΡΠΈΡΠ°ΡΡ, ΡΠ΅ΠΌ Π΅ΡΠ»ΠΈ Π±Ρ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ Π΄Π»Ρ ΡΠΈΠΊΠ»Π° ΠΈΠ»ΠΈ Π΅ΡΠ»ΠΈ Π±Ρ ΠΌΡ ΠΏΡΠΎΡΡΠΎ ΡΠΊΠ°Π·Π°Π»ΠΈ $ value Π²ΠΌΠ΅ΡΡΠΎ $ car .
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠΏΠΈΡΠΊΠ° Π΄Π΅Π», ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΏΠΎΠΌΠΈΠ½Π°Π»ΡΡ ΡΠ°Π½Π΅Π΅. ΠΠ° ΡΡΠΎΡ ΡΠ°Π· Π½Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊΠ°ΠΊ ΠΊ ΠΊΠ»ΡΡΡ, ΡΠ°ΠΊ ΠΈ ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΡ. ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°Π·Π²Π°ΡΡ ΠΏΠ°ΡΡ ΠΊΠ»ΡΡ / Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊ $ ΠΊΠ»ΡΡ / $ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΊΠ°Π·Π°ΡΡ Π½Π°ΡΠ΅ ΠΈΠΌΡ. Π ΠΊΠ»ΡΡΠ΅ Ρ ΡΠ°Π½ΠΈΡΡΡ Π΄Π΅Π½Ρ Π½Π΅Π΄Π΅Π»ΠΈ, Π° Π² Π·Π½Π°ΡΠ΅Π½ΠΈΠΈ - Π·Π°Π΄Π°ΡΠ°. ΠΠ°Π·ΠΎΠ²Π΅ΠΌ ΠΊΠ»ΡΡ $ day_in_week , Π° Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ $ to_do_item .
ΠΠΎΠ³Π΄Π° ΠΌΡ ΠΏΠ΅ΡΠ΅Π±ΠΈΡΠ°Π΅ΠΌ ΠΌΠ°ΡΡΠΈΠ² $ to_do_list , Ρ Π½Π°Ρ Π΅ΡΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊΠ°ΠΊ ΠΊ ΠΊΠ»ΡΡΡ, ΡΠ°ΠΊ ΠΈ ΠΊ Π·Π½Π°ΡΠ΅Π½ΠΈΡ. PHP ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΊΠ»ΡΡΠ°, Π·Π° ΠΊΠΎΡΠΎΡΡΠΌ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π΄Π²ΠΎΠ΅ΡΠΎΡΠΈΠ΅, Π·Π° ΠΊΠΎΡΠΎΡΡΠΌ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° Π² ΠΌΠ°ΡΡΠΈΠ²Π΅. ΠΠΎΠΌΠ½ΠΈΡΠ΅, ΡΡΠΎ ΡΡΡΡΠΊΡΡΡΠ° foreach ΡΡΠ΅Π±ΡΠ΅Ρ, ΡΡΠΎΠ±Ρ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ ΠΊΠ°ΠΊ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ ΠΈ ΡΡΡΠ΅Π»ΠΊΡ (=>) Π²Π½ΡΡΡΠΈ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ foreach , Π΅ΡΠ»ΠΈ Π²Ρ ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΠ΅ΡΡ ΠΊ ΠΏΠ°ΡΠ°ΠΌ ΠΊΠ»ΡΡ / Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
PHP ΡΠΊΠ²ΠΎΠ·Π½ΠΎΠΉ ΠΌΠ°ΡΡΠΈΠ² - Copahost
Π PHP Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² Π΄Π»Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°.ΠΡΠΎ ΡΡΠ½ΠΊΡΠΈΠΈ foreach, while ΠΈ for. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΡ Π½Π° ΡΠΈΠΊΠ»ΠΈΡΠ΅ΡΠΊΠΎΠΌ ΠΌΠ°ΡΡΠΈΠ²Π΅ PHP Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· ΡΡΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ. Π ΡΡΠΈΡ ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ Π² ΡΡΠ΅Π½Π°ΡΠΈΠΈ PHP Π±ΡΠ΄Π΅Ρ ΡΠΈΠΊΠ», ΠΈ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡΠ»Π΅Π½Π΅ ΠΌΠ°ΡΡΠΈΠ²Π° ΡΡΠ΅Π½Π°ΡΠΈΠΉ PHP ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅.
ΠΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΌΠ°ΡΡΠΈΠ²Π° ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π»ΡΠ±ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ.
PHP Π¦ΠΈΠΊΠ» ΠΏΠΎ ΠΌΠ°ΡΡΠΈΠ²Ρ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ foreach ()
Π€ΡΠ½ΠΊΡΠΈΡ foreach - ΠΎΠ΄Π½Π° ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π΄Π»Ρ ΡΠΈΠΊΠ»ΠΎΠ² Π² PHP. ΠΠ°ΠΊ ΡΠΊΠ°Π·Π°Π½ΠΎ Π² Π½Π°Π·Π²Π°Π½ΠΈΠΈ: Β«ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎΒ» ΡΠ»Π΅Π½Π° Π²ΡΠΏΠΎΠ»Π½ΡΠΉΡΠ΅ ΡΠ°ΠΊΠΈΠ΅ Π·Π°Π΄Π°Π½ΠΈΡ.
Php foreach ($ ΠΌΠ°ΡΡΠΈΠ² ΠΊΠ°ΠΊ $ ΠΊΠ»ΡΡ) { echo "ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅: $ key
"; } ?>
Π¦ΠΈΠΊΠ» ΡΠ΅ΡΠ΅Π· ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅ΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² Π² PHP
ΠΠΎΠΌΠ°Π½Π΄Π° foreach ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ° ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅ΡΠ½ΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² Π² PHP. ΠΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π±ΡΠ΄Π΅Ρ Π·Π°Π²ΠΈΡΠ΅ΡΡ ΠΎΡ ΡΡΡΡΠΊΡΡΡΡ ΠΌΠ°ΡΡΠΈΠ²Π°.
ΠΡΠΈΠΌΠ΅Ρ:
Php // ΠΠΎΡΡΡΠΎΠΈΠΌ ΡΡΡΡΠΊΡΡΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° $ array [1] ['ΠΈΠΌΡ'] = "ΠΠΆΠΎΠ½"; $ array [1] ['phone'] = "+1 888 9567834"; $ array [2] ['ΠΈΠΌΡ'] = "ΠΠ°Π½Ρ"; $ array [2] ['phone'] = "+44 32 5600 673"; $ array [3] ['ΠΈΠΌΡ'] = "Π ΠΎΠ±Π΅ΡΡ"; $ array [3] ['phone'] = "+1 45 5634 0843"; $ array [4] = "ΠΠ°ΡΠΈΡ"; foreach ($ ΠΌΠ°ΡΡΠΈΠ² ΠΊΠ°ΠΊ $ key1 => $ value) { echo "
ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅: $ key1 ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅: $ value
"; // ΠΡΠ»ΠΈ ΡΡΠΎ ΠΌΠ°ΡΡΠΈΠ², Π΄Π°Π²Π°ΠΉΡΠ΅ Π΅ΡΠ΅ ΡΠ°Π· Π·Π°Π³Π»ΡΠ½Π΅ΠΌ Π² Π½Π΅Π³ΠΎ Π΅ΡΠ»ΠΈ (is_array ($ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅)) { foreach (Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ $ ΠΊΠ°ΠΊ $ key2) { echo "---- $ key2
"; } } // Π΅ΡΠ»ΠΈ ΡΡΠΎ ΠΏΡΠΎΡΡΠ°Ρ ΡΡΡΠΎΠΊΠ° (Π½Π΅ ΠΌΠ°ΡΡΠΈΠ²), Π½Π°ΠΏΠ΅ΡΠ°ΡΠ°Π΅ΠΌ Π΅Π΅ Π΅ΡΠ΅ { echo "---- $ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅"; } } ?>
ΠΡΠ°ΠΊ, Π½Π° Π²ΡΡ ΠΎΠ΄Π΅:
Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅: 1 Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅: ΠΌΠ°ΡΡΠΈΠ² ---- ΠΠΆΠΎΠ½ ---- + 1888 9567834 ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅: 2 ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅: ΠΌΠ°ΡΡΠΈΠ² ---- ΠΠΎΡ ---- +44 32 5600 673 ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅: 3 ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅: ΠΌΠ°ΡΡΠΈΠ² ---- Π ΠΎΠ±Π΅ΡΡ ---- +1 45 5634 0843 ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅: 4 ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅: ΠΠ°ΡΠΈΡ ---- ΠΠ°ΡΠΈΡ
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ $ value Π½Π° ΠΏΠ΅ΡΠ²ΠΎΠΌ ΡΡΠΎΠ²Π½Π΅ ΠΌΠ°ΡΡΠΈΠ²Π° Π±ΡΠ»ΠΎ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΠ΅Π½ΠΎ ΠΊΠ°ΠΊ Π½ΠΎΠ²ΡΠΉ ΠΌΠ°ΡΡΠΈΠ².ΠΠ°ΡΠ΅ΠΌ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΠΏΡΡΡΠΈΡΡ Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ foreach Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΅Π³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅. ΠΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ PHP-ΡΡΠ½ΠΊΡΠΈΡ is_array (), ΡΡΠΎΠ±Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ, ΡΠ²Π»ΡΠ΅ΡΡΡ Π»ΠΈ ΡΡΠΎ ΠΏΡΠΎΡΡΠΎΠΉ ΡΡΡΠΎΠΊΠΎΠΉ ΠΈΠ»ΠΈ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠΌ.
ΠΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΡΠ½ΠΊΡΠΈΠΈ foreach () ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ.
Π¦ΠΈΠΊΠ» while Π² PHP
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΠΈΠΊΠ» while?Π¦ΠΈΠΊΠ» PHP while ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π° Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° Π΄Π°Π½Π½ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π² while Π½Π΅ ΡΡΠ°Π½Π΅Ρ Π»ΠΎΠΆΠ½ΡΠΌ.
ΠΡΠΎ ΠΏΡΠΎΡΡΠ΅ΠΉΡΠΈΠΉ ΡΠΈΠΏ ΡΠΈΠΊΠ»Π° Π² PHP, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠ°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΡΠ·ΡΠΊ C.
Π£ΡΠ»ΠΎΠ²ΠΈΠ΅ ΠΈΠ»ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΡΡΡ Π² Π½Π°ΡΠ°Π»Π΅ ΡΠΈΠΊΠ»Π° while.
Π‘ΠΌ. Π’Π°ΠΊΠΆΠ΅: ΡΠΈΠΊΠ» for
Π‘ΡΡΡΠΊΡΡΡΠ° ΡΠΈΠΊΠ»Π° whileΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡΡ ΠΎΠ±ΡΠ°Ρ ΡΡΡΡΠΊΡΡΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΠΊΠ»Π° while Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°Ρ PHP:
while (ΡΡΠ»ΠΎΠ²ΠΈΠ΅ / Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅) {
// ΠΠ΄Π΅ΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ;
ΠΊΠΎΠ½Π΅Ρ;
}
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ Π² Π½Π°ΡΠ°Π»Π΅ ΡΠΈΠΊΠ»Π° while, Π΅ΡΠ»ΠΈ Π·Π°ΡΠ°Π½Π΅Π΅ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ Π»ΠΎΠΆΠ½ΠΎ, ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ Π²Π½ΡΡΡΠΈ ΡΠΈΠ³ΡΡΠ½ΡΡ ΡΠΊΠΎΠ±ΠΎΠΊ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π½Π΅ Π±ΡΠ΄ΡΡ.Π§ΡΠΎΠ±Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π±Π»ΠΎΠΊ ΠΊΠΎΠ΄Π° Ρ ΠΎΡΡ Π±Ρ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·, Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ Π»ΠΎΠΆΠ½ΠΎ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΠΊΠ» do.. while .
ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΠΊΠ»Π° while Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠΈΡΠ΅Π»Π ΡΡΠΎΠΌ ΠΏΡΠΎΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΠΊΠ»Π° while Π² PHP; ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΡΡΡ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅ΡΡΡ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ ΠΈ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ Π½Π° 1, Π΅ΡΠ»ΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΠΈΡΡΠΈΠ½Π½ΠΎ.
ΠΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΎΠ½Π»Π°ΠΉΠ½-Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΡ ΠΈ ΠΊΠΎΠ΄ ΠΠΎΡ ΠΊΠ°ΠΊ ΡΠΈΠΊΠ» while ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π²ΡΡΠ΅:
$ Ρ = 1; while ($ x <= 5) { echo $ x.Β« $ x ++; } |
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° Π΄Π΅ΠΊΡΠ΅ΠΌΠ΅Π½ΡΠ° Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΠΈΠΊΠ»Π° while
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠΌΠ΅Π½ΡΡΠ°Π΅ΡΡΡ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ ΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ Π² HTML-ΡΠ΅Π³Π΅ div.
ΠΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΎΠ½Π»Π°ΠΉΠ½-Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΡ ΠΈ ΠΊΠΎΠ΄ Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄ Π΄Π»Ρ ΡΠΈΠΊΠ»Π° while:
$ Ρ = 5; while ($ x> = 1) { echo $ x.Β« $ x--; } |
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠ»ΠΎΠ²Π° end while Π² ΡΠΈΠΊΠ»Π΅ while
ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ end while Π² ΡΠΈΠΊΠ»Π΅ while. ΠΡΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ Π±ΡΠ΄Π΅Ρ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ ΡΠΎ ΠΆΠ΅, ΡΡΠΎ ΠΈ Π² ΠΏΠ΅ΡΠ²ΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅:
ΠΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΎΠ½Π»Π°ΠΉΠ½-Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΡ ΠΈ ΠΊΠΎΠ΄ ΠΠΎΡ ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π²ΡΡΠ΅:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 17 | Php // ΠΠ΅ΠΌΠΎ PHP whileloop $ x = 1; Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ ($ x <= 5): echo $ x.Β« $ x ++; ΠΊΠΎΠ½Π΅Ρ; ?> |
ΠΠ΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΡ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ΅ΠΌ Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡΡ Π² ΡΠΈΠΊΠ»Π΅ while
Π ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΡ Π²ΡΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ ΠΏΡΠΈΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΡΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠ°Π²Π½ΠΎ 1 Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ++ ΠΈΠ»ΠΈ -. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΡ Π΄ΡΡΠ³ΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ. Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΏΡΠΈΡΠ°ΡΠ΅Π½ΠΈΠ΅ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ ΡΠ°Π²Π½ΠΎ 10.
ΠΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΎΠ½Π»Π°ΠΉΠ½-Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΡ ΠΈ ΠΊΠΎΠ΄ ΠΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄:
$ Ρ = 10; ΠΏΡΠΈ ΡΡΠΎΠΌ ($ x <= 50): echo $ x.Β« $ x = $ x + 10; ΠΊΠΎΠ½Π΅Ρ; |
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΈΠΊΠ»Π° while Ρ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌΠΈ PHP
ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΠΊΠ» PHP while Ρ ΠΌΠ°ΡΡΠΈΠ²Π°ΠΌΠΈ. Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ· ΠΏΡΡΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ². ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π² ΡΠΈΠΊΠ»Π΅ while - ΡΡΠΎ ΠΎΠ±ΡΠ°Ρ Π΄Π»ΠΈΠ½Π° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΠΈ count . Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΠΈΠΊΠ» while Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° Π½Π΅ Π΄ΠΎΡΡΠΈΠ³Π½Π΅Ρ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ ΠΌΠ°ΡΡΠΈΠ²Π°.ΠΠ° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° echo PHP.
ΠΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΎΠ½Π»Π°ΠΉΠ½-Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΡ ΠΈ ΠΊΠΎΠ΄ ΠΠΎΡ ΠΊΠ°ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΈΠΊΠ»Π° while:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 17 | Php // ΠΠ΅ΠΌΠΎ PHP whileloop $ arr_variable = array (10,20,30,40,50); $ x = 0; while ($ x echo "Π’Π΅ΠΊΡΡΠ΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΌΠ°ΡΡΠΈΠ²Π° = $ arr_variable [$ x] $ x ++; } ?> |
ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΠΈΠΊΠ»Π° while Ρ Π°ΡΡΠΎΡΠΈΠ°ΡΠΈΠ²Π½ΡΠΌ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠΌ
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π°ΡΡΠΎΡΠΈΠ°ΡΠΈΠ²Π½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ· ΡΡΠ΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ².Π¦ΠΈΠΊΠ» while ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Ρ ΠΊΠ»ΡΡΠΎΠΌ / Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ , Π³Π΄Π΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ².
ΠΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΎΠ½Π»Π°ΠΉΠ½-Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΡ ΠΈ ΠΊΠΎΠ΄ Π‘Π½Π°ΡΠ°Π»Π° ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π°ΡΡΠΎΡΠΈΠ°ΡΠΈΠ²Π½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ²:
$ arr_courses = array ( "course1" => "PHP", "course2" => "MySQL", "course3" => "Java", ); |
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΈΠΊΠ» while:
while (list ($ key, $ value) = each ($ arr_courses)) { echo $ key.'='. $ value. " } |
ΠΠΎΡΠ΅ΠΌΡ ΠΈ ΠΊΠΎΠ³Π΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ Π²ΠΌΠ΅ΡΡΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° Π² PHP | by Ujjwal Ojha
ΠΠ΅Π½Π΅ΡΠ°ΡΠΎΡ - ΡΡΠΎ ΠΠ§ΠΠΠ¬ ΠΌΠΎΡΠ½Π°Ρ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ, Π΄Π°ΡΡΠ°Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ². Π― ΡΡΠΈΡΠ°Ρ, ΡΡΠΎ ΠΎΠ½ΠΈ ΠΎΡΠ΅Π½Ρ ΠΌΠ°Π»ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΠΈ Π½Π΅Π΄ΠΎΠΎΡΠ΅Π½ΠΈΠ²Π°ΡΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ PHP. Π ΡΡΠΎΠΌ ΠΏΠΎΡΡΠ΅ Ρ ΠΎΠ±ΡΡΡΠ½Ρ, ΠΊΠ°ΠΊΠΎΠ²Ρ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠΎΠ² ΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅, Π½Π°Π΄Π΅ΡΡΡ, ΠΌΠΎΡΠΈΠ²ΠΈΡΡΡΡ Π²Π°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²ΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΠΈ Π±ΠΎΠ»ΡΡΠ΅ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠΎΠ² Π² PHP.
ΠΠ΅Π½Π΅ΡΠ°ΡΠΎΡ - ΡΡΠΎ ΠΎΡΠΎΠ±ΡΠΉ ΡΠΈΠΏ ΠΈΡΠ΅ΡΠ°ΡΠΎΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈΡΠ΅ΡΠ°ΡΠΎΡΠΎΠ² Π² PHP Π΄Π»Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° ΡΠ»ΡΡΠ°Π΅Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ. ΠΡΠ°ΠΊ, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΈΡΠ΅ΡΠ°ΡΠΎΡ, ΠΏΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΌΡ ΡΠ·Π½Π°Π΅ΠΌ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ.
ΠΠ°ΡΡΠΈΠ²Ρ - Π½Π΅ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠ΅, ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π±ΠΈΡΠ°ΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ foreach
Π² PHP. ΠΡΠ±ΠΎΠΉ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ°, ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΠ΅Π³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Iterator
, ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ foreach
.
ΠΠΎΡ ΠΏΡΠΎΡΡΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠ³ΠΎ ΠΈΡΠ΅ΡΠ°ΡΠΎΡΠ°. ΠΠ½ ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΏΡΡΡ ΠΊ ΡΠ°ΠΉΠ»Ρ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠ°, Π° Π·Π°ΡΠ΅ΠΌ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ΅Π±ΠΈΡΠ°ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ foreach.
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠΎΠ²Π΅Ρ: Π²Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΈΡΠ΅ΡΠ°ΡΠΎΡΡ, ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΠΈΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ IteratorAggregate.
ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ, ΡΡΠΎ ΡΠΏΠΈΡΠΎΠΊ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π±ΡΠ΄Π΅Ρ Π·Π°Π³ΡΡΠΆΠ΅Π½ ΠΊΡΠ΄Π°-Π½ΠΈΠ±ΡΠ΄Ρ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π² ΠΊΠΎΡΠ·ΠΈΠ½Ρ AWS S3.
ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Ρ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠΌ Π²ΡΡΠ΅ ΠΊΠΎΠ΄ΠΎΠΌ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π²Ρ Π·Π°Π³ΡΡΠΆΠ°Π΅ΡΠ΅ Π²ΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π² ΠΏΠ°ΠΌΡΡΡ Π΅ΡΠ΅ Π΄ΠΎ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ ΠΊΠ°ΠΊΠΎΠ΅-Π»ΠΈΠ±ΠΎ ΠΈΠ· ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ.
ΠΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠΉ Π²ΡΡΠ΅ ΠΊΠΎΠ΄ Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Iterator, ΠΈΡΠ΅ΡΠ°ΡΠΎΡ ΠΌΠΎΠΆΠ΅Ρ Π»Π΅Π½ΠΈΠ²ΠΎ Π·Π°Π³ΡΡΠΆΠ°ΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΈ Π²ΡΠ΅Ρ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ Π² ΠΏΠ°ΠΌΡΡΡ.
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠΎΠ²Π΅Ρ: ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅
iterable
typehint Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ², Π° ΡΠ°ΠΊΠΆΠ΅ Iterator.
ΠΠ΅Π½Π΅ΡΠ°ΡΠΎΡ - ΡΡΠΎ ΡΠ°ΠΌΡΠΉ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈΡΠ΅ΡΠ°ΡΠΎΡΠΎΠ² Ρ ΠΎΡΠ»ΠΎΠΆΠ΅Π½Π½ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΎΠΉ. ΠΠ΅Π½Π΅ΡΠ°ΡΠΎΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΊΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΠ»ΠΎΠ²ΠΎ yield
, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π»Π΅Π³ΠΊΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΈΡΠ΅ΡΠ°ΡΠΎΡΡ Ρ ΠΎΡΠ»ΠΎΠΆΠ΅Π½Π½ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΎΠΉ. ΠΠ΅ΡΠ²ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠ΄Π° Iterator ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΡ Π² Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ, ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°Π² Π³ΠΎΡΠ°Π·Π΄ΠΎ ΠΌΠ΅Π½ΡΡΠ΅ ΠΊΠΎΠ΄Π°.
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΡΠΎΠ²Π΅Π΄Π΅ΠΌ ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ Π²ΡΡΠ΅ ΠΊΠΎΠ΄Π° Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠ° ΠΈ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΌΠ°ΡΡΠΈΠ²Π°.
Π― ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π» ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ xhprof Π΄Π»Ρ ΠΏΡΠΎΡΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π΄Π²ΡΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΡ Π²ΡΡΠ΅ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΎΠ² ΠΊΠΎΠ΄Π° Π΄Π»Ρ ΠΏΠ΅ΡΠ°ΡΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 5 ΠΠ, ΠΈ Π²ΠΎΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ:
ΠΠ΅ΡΠ²ΡΠΉ - ΡΡΠΎ ΠΎΡΡΠ΅Ρ Π²ΡΡΠ΅ΡΠΏΠΎΠΌΡΠ½ΡΡΠΎΠ³ΠΎ PHP-ΡΠΊΡΠΈΠΏΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΌΠ°ΡΡΠΈΠ², Π° Π²ΡΠΎΡΠΎΠΉ - ΠΎΡΡΠ΅Ρ ΡΠΊΡΠΈΠΏΡΠ° php, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ. ΠΡ Ρ ΠΎΡΠΈΠΌ ΡΠΎΡΡΠ΅Π΄ΠΎΡΠΎΡΠΈΡΡΡΡ Π½Π° ΠΏΠ°ΠΌΡΡΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½Π° ΠΊΡΠ°ΡΠ½ΡΠΌ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠΎΠΌ, ΠΈ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΏΠΎΡΠ°Π·ΠΈΡΠ΅Π»ΡΠ½Ρ. Π‘ΠΊΡΠΈΠΏΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠΉ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ, Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠ΅Π²ΠΎΡΡ ΠΎΠ΄ΠΈΡ Π΄ΡΡΠ³ΠΎΠΉ ΡΠΊΡΠΈΠΏΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠΉ ΠΌΠ°ΡΡΠΈΠ².
Early Break
ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΡΠΎ Π²ΡΠΉΡΠΈ ΠΈΠ· ΡΠΈΠΊΠ»Π° ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ Π·Π°ΠΊΠΎΠ½ΡΠΈΡΠ΅ ΡΠΈΠΊΠ», ΠΈ Π²Ρ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΠΌΡΡΠΈ, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠΉ Π»Π΅Π½ΠΈΠ²ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠΎΠΉ Π΄Π°Π½Π½ΡΡ .
ΠΡΠΏΡΠ°Π²ΠΊΠ° Π΄Π°Π½Π½ΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠ°ΠΌ
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ send
ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π² Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ yield. ΠΡΠΎ ΠΏΡΠ΅Π²ΡΠ°ΡΠ°Π΅Ρ ΠΎΠ΄Π½ΠΎΡΡΠΎΡΠΎΠ½Π½ΡΡ ΡΠ²ΡΠ·Ρ ΠΎΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠ° ΠΊ Π²ΡΠ·ΡΠ²Π°ΡΡΠ΅ΠΌΡ Π² Π΄Π²ΡΡΡΠΎΡΠΎΠ½Π½ΠΈΠΉ ΠΊΠ°Π½Π°Π» ΠΌΠ΅ΠΆΠ΄Ρ Π½ΠΈΠΌΠΈ.
ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠΈΠ»ΠΈΡΡ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΎΡΠ° Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ send ()
:
Π‘ΠΎΠ²ΠΌΠ΅ΡΡΠ½ΡΡ ΠΏΠΎΠ΄ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ
ΠΠ²ΡΡΡΠΎΡΠΎΠ½Π½ΡΡ ΡΠ²ΡΠ·Ρ ΠΌΠ΅ΠΆΠ΄Ρ Π²ΡΠ·ΡΠ²Π°ΡΡΠΈΠΌ Π°Π±ΠΎΠ½Π΅Π½ΡΠΎΠΌ ΠΈ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠΎΠΌ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄Π° send
ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎΠΉ ΠΌΠ½ΠΎΠ³ΠΎΠ·Π°Π΄Π°ΡΠ½ΠΎΡΡΠΈ.
ΠΠΎ ΡΡΡΠΈ, ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ Π·Π°Π΄Π°ΡΠ°ΠΌΠΈ, Π²ΡΠΏΠΎΠ»Π½ΡΡ ΠΎΠ΄Π½Ρ Π·Π°Π΄Π°ΡΡ Π·Π° ΡΠ°Π·, Π° Π·Π°ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°Ρ Π΅Π΅ Ρ Π΄ΡΡΠ³ΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅ΠΉ.
ΠΠΈΠΊΠΈΡΠ° ΠΠΎΠΏΠΎΠ² Π½Π°ΠΏΠΈΡΠ°Π» ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ Π±Π»ΠΎΠ³ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΡΡ ΠΌΠ½ΠΎΠ³ΠΎΠ·Π°Π΄Π°ΡΠ½ΠΎΡΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠΎΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠΎΠ² PHP.
ΠΠ΅Π½Π΅ΡΠ°ΡΠΎΡΡ - ΡΡΠΎ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠ°Ρ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π΄Π°Π΅Ρ ΡΠ°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ², ΠΈ Ρ Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ Π΅Π΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°ΡΠ΅, Π³Π΄Π΅ ΡΡΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.
Π΄Π»Ρ - ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ - Twig
ΠΠ΅ΡΠ΅Π±ΡΠ°ΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠΎΠ±Ρ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ ΡΠΏΠΈΡΠΎΠΊ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ
ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ
:
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅
ΠΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π»ΠΈΠ±ΠΎ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠΌ, Π»ΠΈΠ±ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠΌ, ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΠΈΠΌ ΠΡΠΎΡ
ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ
.
ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π±ΡΠ°ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠΈΡΠ΅Π», Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ..
ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ:
ΠΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠΉ Π²ΡΡΠ΅ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΠΊΠΎΠ΄Π° Π²ΡΠ²ΠΎΠ΄ΠΈΡ Π²ΡΠ΅ ΡΠΈΡΠ»Π° ΠΎΡ 0 Π΄ΠΎ 10.
ΠΠΎΠΆΠ΅Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈΠ³ΠΎΠ΄ΠΈΡΡΡΡ Ρ Π±ΡΠΊΠ²Π°ΠΌΠΈ:
ΠΠΎΠ΄Π΅Π»Ρ .. ΠΠΏΠ΅ΡΠ°ΡΠΎΡ
ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π»ΡΠ±ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Ρ ΠΎΠ±Π΅ΠΈΡ
ΡΡΠΎΡΠΎΠ½:
ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ΅Π½ ΡΠ°Π³, ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ ΠΎΡ 1, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ
range
Π²ΠΌΠ΅ΡΡΠΎ.
ΠΠ½ΡΡΡΠΈ Π±Π»ΠΎΠΊΠ° ΡΠΈΠΊΠ»Π° Π΄Π»Ρ
Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΌ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ:
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ | ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅ |
---|---|
loop.index | Π’Π΅ΠΊΡΡΠ°Ρ ΠΈΡΠ΅ΡΠ°ΡΠΈΡ ΡΠΈΠΊΠ»Π°.(1 ΠΏΡΠΎΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΎ) |
loop.index0 | Π’Π΅ΠΊΡΡΠ°Ρ ΠΈΡΠ΅ΡΠ°ΡΠΈΡ ΡΠΈΠΊΠ»Π°. (0 ΠΏΡΠΎΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΎ) |
ΠΏΠ΅ΡΠ»Ρ. Π Π΅Π²ΠΈΠ½Π΄Π΅ΠΊΡ | ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΉ ΠΎΡ ΠΊΠΎΠ½ΡΠ° ΡΠΈΠΊΠ»Π° (1 ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΡΠ΅ΡΡΡ) |
ΠΏΠ΅ΡΠ»Ρ. Revindex0 | Π§ΠΈΡΠ»ΠΎ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΉ ΠΎΡ ΠΊΠΎΠ½ΡΠ° ΡΠΈΠΊΠ»Π° (ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΡΠ΅ΡΡΡ 0) |
ΠΏΠ΅ΡΠ»Ρ.ΠΏΠ΅ΡΠ²Π°Ρ | ΠΡΡΠΈΠ½Π½ΠΎ, Π΅ΡΠ»ΠΈ ΠΏΠ΅ΡΠ²Π°Ρ ΠΈΡΠ΅ΡΠ°ΡΠΈΡ |
ΠΊΠΎΠ½Π΅Ρ ΠΏΠ΅ΡΠ»ΠΈ | ΠΡΡΠΈΠ½Π½ΠΎ, Π΅ΡΠ»ΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ ΠΈΡΠ΅ΡΠ°ΡΠΈΡ |
Π΄Π»ΠΈΠ½Π° ΠΏΠ΅ΡΠ»ΠΈ | ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ |
ΠΏΠ΅ΡΠ»Ρ. Π ΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠ°Ρ | Π ΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ |
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅
ΠΠ΅ΡΠ»Ρ .Π΄Π»ΠΈΠ½Π°
, ΠΏΠ΅ΡΠ»Ρ. ΡΠ΅Π²ΠΈΠ½Π΄Π΅ΠΊΡ
, ΠΏΠ΅ΡΠ»Ρ. ΡΠ΅Π²ΠΈΠ½Π΄Π΅ΠΊΡ0
, ΠΈ loop.last
ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
Π΄ΠΎΡΡΡΠΏΠ½Ρ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² PHP ΠΈΠ»ΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅
ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Countable
. ΠΠ½ΠΈ ΡΠ°ΠΊΠΆΠ΅ Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½Ρ, ΠΊΠΎΠ³Π΄Π°
ΡΠΈΠΊΠ» Ρ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ΠΌ.
ΠΠΎΠ½ΡΠΈΠΊ
ΠΠ°ΡΠΈΠ½Π°Ρ Ρ Twig 2.10, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π²ΠΌΠ΅ΡΡΠΎ Π½Π΅Π³ΠΎ ΡΠΈΠ»ΡΡΡ-ΡΠΈΠ»ΡΡΡ,
ΠΈΠ»ΠΈ , Π΅ΡΠ»ΠΈ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅
Π²Π½ΡΡΡΠΈ Π΄Π»Ρ ΠΊΠΎΡΠΏΡΡΠ°
(Π΅ΡΠ»ΠΈ Π²Π°ΡΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ
ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ΅ΡΡΡ Π²Π½ΡΡΡΠΈ ΡΠΈΠΊΠ»Π°, ΠΈ Π²Ρ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΡΠΈΠΊΠ»
ΠΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ).
Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ PHP, Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅ΡΠ²Π°ΡΡ
ΠΈΠ»ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ
Π² ΡΠΈΠΊΠ»Π΅. Π’Ρ
ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΈΠ»ΡΡΡΠΎΠ²Π°ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΎΠΏΡΡΡΠΈΡΡ
ΠΡΠ΅Π΄ΠΌΠ΅ΡΡ. Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΏΡΠΎΠΏΡΡΠΊΠ°ΡΡΡΡ Π²ΡΠ΅ Π½Π΅Π°ΠΊΡΠΈΠ²Π½ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΠΈ:
ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ ΡΠΎΡΡΠΎΠΈΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½Π°Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠΈΠΊΠ»Π° Π±ΡΠ΄Π΅Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΠΏΠΎΠ΄ΡΡΠΈΡΡΠ²Π°ΡΡ, ΠΏΠΎΡΡΠΎΠΌΡ Π½Π΅
ΠΏΠΎΠ΄ΡΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ, Π½Π΅ ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½Π½ΡΡ
. ΠΠΌΠ΅ΠΉΡΠ΅ Π² Π²ΠΈΠ΄Ρ, ΡΡΠΎ ΡΠ°ΠΊΠΈΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π°, ΠΊΠ°ΠΊ loop.last
Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠΉ ΡΠΈΠΊΠ»Π°.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠΈΠΊΠ»Π°
Π² ΡΡΠ»ΠΎΠ²ΠΈΠΈ Π½Π΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΡΠΎ
Π²Π΅ΡΠΎΡΡΠ½ΠΎ, Π½Π΅ Π±ΡΠ΄Π΅Ρ Π΄Π΅Π»Π°ΡΡ ΡΠΎ, ΡΡΠΎ Π²Ρ ΠΎΠΆΠΈΠ΄Π°Π΅ΡΠ΅.ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄ΠΎΠ±Π°Π²ΠΈΠ²
ΡΡΠ»ΠΎΠ²ΠΈΠ΅ Π²ΡΠΎΠ΄Π΅ loop.index> 4
Π½Π΅ Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠΎΠ»ΡΠΊΠΎ
ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ, ΠΊΠΎΠ³Π΄Π° ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΠΈΡΡΠΈΠ½Π½ΠΎ (ΠΏΠΎΡΡΠΎΠΌΡ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π±ΡΠ΄Π΅Ρ
ΠΌΠ°ΡΡ).
ΠΡΠ»ΠΈ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ Π½Π΅ Π±ΡΠ»ΠΎ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π±ΡΠ»Π° ΠΏΡΡΡΠΎΠΉ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ
Π·Π°ΠΌΠ΅Π½Π° Π±Π»ΠΎΠΊΠ° Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΈΠ½Π°ΡΠ΅
:
ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠΈΠΊΠ» ΠΏΠ΅ΡΠ΅Π±ΠΈΡΠ°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.