какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы

Достоинства ΠΈ Ρ„Π°Ρ‚Π°Π»ΡŒΠ½Ρ‹Π΅ нСдостатки Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠΈ Π² php

какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π€ΠΎΡ‚ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусыЯзык php часто Ρ€ΡƒΠ³Π°ΡŽΡ‚, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ нСобоснованно. ОсобСнно удивляСт, Ρ‡Ρ‚ΠΎ javascript Ρ€ΡƒΠ³Π°ΡŽΡ‚ мСньшС. Π—Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ это Π΄Π΅Π»Π°ΡŽΡ‚ люди, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ писали Π½Π° Π½Π΅ΠΌ 10+ Π»Π΅Ρ‚ Π½Π°Π·Π°Π΄, ΠΊΠΎΠ³Π΄Π° язык Π±Ρ‹Π» Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ чСртовски ΠΏΠ»ΠΎΡ…, Π΄Π° ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π² Ρ‚Π΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π° Π½Π΅ Π·Π°Π΄ΡƒΠΌΡ‹Π²Π°Π»ΠΈΡΡŒ Π½Π°Π΄ качСством ΠΊΠΎΠ΄Π°. ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ хотя Π±Ρ‹ Π½Π° ΠΊΠΎΠ΄ wordpress, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄ΠΎ сих ΠΏΠΎΡ€ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ шок.

Π ΡƒΠ³Π°ΡŽΡ‚ нСобоснованно, Π½ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Ρƒ языка, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅, Π΅ΡΡ‚ΡŒ, ΠΈ ΠΎΠ½ΠΈ ΡΠ΅Ρ€ΡŒΡ‘Π·Π½Ρ‹Π΅. РазумСтСся, Ссли ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ послСдниС Ρ€Π΅Π»ΠΈΠ·Ρ‹ php7 (с Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ ООП ΠΈ строгим Ρ‚Π°ΠΉΠΏΡ…ΠΈΠ½Ρ‚ΠΈΠ½Π³ΠΎΠΌ) ΠΈ php4, Ρ‚ΠΎ Ρ€Π°Π·Π½ΠΈΡ†Π° Π±ΡƒΠ΄Π΅Ρ‚ колоссальная. Однако ΠΈ Π² послСдних вСрсиях языка Π½Π΅ всё Π³Π»Π°Π΄ΠΊΠΎ, ΠΈ Π΄ΠΎ java/c# ΠΏΠΎΠΊΠ° Ρ‡Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ Π΄Π°Π»Π΅ΠΊΠΎ. Π‘ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΠ³ΠΎ, Π±Π΅Ρ€ΡƒΡΡŒ ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π±ΡƒΠ΄ΡƒΡ‰Π΅Π΅ php Ρ‚ΠΎΠΆΠ΅ довольно ΡΠΎΠΌΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ (с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Ρ‚ΠΈΠΏΠΎΠ²).

Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, Π΄Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎ, Ρ‡Ρ‚ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΈ Ρ‡Ρ‚ΠΎ ΠΏΠ»ΠΎΡ…ΠΎ Π² php с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠΈ.

Π’Π°ΠΉΠΏ Ρ…ΠΈΠ½Ρ‚ΠΈΠ½Π³ΠΈ

Для Π½Π°Ρ‡Π°Π»Π° Π΄Π°Π²Π°ΠΉΡ‚Π΅ разбСрСмся, для Ρ‡Π΅Π³ΠΎ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½ΡƒΠΆΠ½Ρ‹ Ρ‚Π°ΠΉΠΏΡ…ΠΈΠ½Ρ‚ΠΈΠ½Π³ΠΈ Π² php, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½ΠΈ Ρƒ ΠΊΠΎΠ³ΠΎ Π½Π΅ ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ вопросов Π° ля “Π·Π°Ρ‡Π΅ΠΌ эта лишняя писанина”.

НСмного отвлСчСмся ΠΈ посмотрим кусок ΠΊΠΎΠ΄Π° Π½Π° javascript:

Π§Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎΠ± этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ? Она Π±Π΅Ρ€Π΅Ρ‚ ΠΊΠ°ΠΊΠΈΡ…-Ρ‚ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΡƒΠ΅Ρ‚ ΠΈΡ… ΠΏΠΎ возрасту. Но этого ΠΌΠ°Π»ΠΎ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ сразу Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ вопросы:

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ users? Массив? Или ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ Ρ…ΠΈΡ‚Ρ€Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚-коллСкция?
Возраст Π·Π°Π΄Π°Π½ ΠΊΠ°ΠΊ Ρ†Π΅Π»ΠΎΠ΅ число ΠΈΠ»ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π΄Ρ€ΠΎΠ±Π½Ρ‹ΠΌ?
ΠœΠΎΠΆΠ΅Ρ‚ Π»ΠΈ возраст Π±Ρ‹Ρ‚ΡŒ null?
Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π»ΠΈ эта фунция Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΆΠ΅ мСняСт ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½Ρ‹ΠΉ массив users?

Π§Ρ‚ΠΎΠ±Ρ‹ всё это ΠΏΠΎΠ½ΡΡ‚ΡŒ, Π½Π°Π΄ΠΎ ΠΏΡ€ΠΎΡ‡Π΅ΡΡ‚ΡŒ ΠΊΠΎΠ΄ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹Π·ΠΎΠ²Ρ‹ этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Ошибки Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚Π»ΠΎΠ²ΠΈΡ‚ΡŒ слоТно, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ язык Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€ΡƒΠ³Π°Ρ‚ΡŒΡΡ Π½ΠΈ Π½Π° ΠΊΠ°ΠΊΠΈΠ΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹, Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ ΠΈΡ… ΠΊΠ°ΠΊ-Ρ‚ΠΎ привСсти ΠΊ Π½ΡƒΠΆΠ½ΠΎΠΌΡƒ Ρ‚ΠΈΠΏΡƒ.

Как извСстно, программист Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ большС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°, Ρ‡Π΅ΠΌ Π½Π° написаниС Π½ΠΎΠ²ΠΎΠ³ΠΎ, поэтому отстутствиС подсказок Π² ΠΊΠΎΠ΄Π΅ являСтся Π·Π°Ρ‚Π°Ρ€ΠΌΠ°ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠΌ Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ.

Для сравнСния ΠΊΠΎΠ΄ Π½Π° послСдних вСрсиях php:

Π’Ρ€ΠΎΠ΄Π΅ всё супСр, Π½ΠΎ Π΅ΡΡ‚ΡŒ Π½ΡŽΠ°Π½ΡΡ‹.

НСт Π΄ΠΆΠ΅Π½Π΅Ρ€ΠΈΠΊΠΎΠ²

НСт ΡƒΡ‚ΠΎΡ‡Π½Π΅Π½ΠΈΠΉ для Ρ‚ΠΈΠΏΠ° callable.

Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

Π§Ρ‚ΠΎ Π·Π° функция ΠΈΠ΄Π΅Ρ‚ Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΌ? Π§Ρ‚ΠΎ Π² Π½Π΅ΠΉ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ?

Волько Π² коммСнтариях ΠΊ ΠΊΠΎΠ΄Ρƒ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΌ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ, ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, Π΄Π²Π° Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°. ΠšΡΡ‚Π°Ρ‚ΠΈ, Π΅ΡΡ‚ΡŒ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ Π²ΠΈΠ΄Π° Π»ΠΆΠΈ: лоТь, наглая лоТь, статистика ΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΊ ΠΊΠΎΠ΄Ρƒ.

Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… языках, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π² TypeScript, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ прямо Π² объявлСнии Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

Π’.Π΅. здСсь Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° action Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ функция с двумя Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ (строка ΠΈ число), которая Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²ΠΎΠ·Ρ€Π²Π°Ρ‰Π°Π΅Ρ‚. Всё максимально явно, IDE ΠΈ компилятор сразу скаТут, Ссли Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ Π±Ρ‹Π» ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ Π½Π΅ Ρ‚Π°ΠΊΠΎΠΉ

Бтранности Ρ‚Π°ΠΉΠΏΡ…ΠΈΠ½Ρ‚ΠΈΠ½Π³Π° ΠΈ Ρ‚ΠΈΠΏΠ° Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° Π² связкС с наслСдованиСм

Π—Π΄Π΅ΡΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΎΡˆΠΈΠ±ΠΊΡƒ, Ρ‡Ρ‚ΠΎ findById Π½Π΅ совмСстим с findById ΠΈΠ· абстрактного класса.

Π’Π°ΠΊΠΎΠΉ ΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π² java Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ компилируСтся:

Π² TypeScript Ρ‚ΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ:

На это Π΄Π΅Π»ΠΎ врСмя ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΏΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ Π±Π°Π³ Ρ€Π΅ΠΏΠΎΡ€Ρ‚Ρ‹, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ исправлСно ΠΊΠΎΠ³Π΄Π°-Π½ΠΈΠ±ΡƒΠ΄ΡŒ:

Π€Π°Ρ‚Π°Π»ΡŒΠ½Π°Ρ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°

Бамая большая ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ php провСряСт Ρ‚ΠΈΠΏΡ‹ Π²ΠΎ врСмя выполнСния, Π° Π½Π΅ Π²ΠΎ врСмя компиляции. ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ, Π½Π΅ смотря Π½Π° strict_types ΠΈ type hintings, это Π’ΠΠ•Π—ΠΠŸΠΠž Π½Π΅ строго Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык

ΠžΡ‚ΡΡŽΠ΄Π° слСдуСт Π΄Π²Π° Π²Ρ‹Π²ΠΎΠ΄Π°:

1) Π§Π΅ΠΌ большС ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ Π² Ρ€Π°Π½Ρ‚Π°ΠΉΠΌΠ΅, Ρ‚Π΅ΠΌ большС Ρ‚ΠΎΡ€ΠΌΠΎΠ·ΠΎΠ². ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ слишком слоТныС ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ навряд Π»ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΊΠΎΠ³Π΄Π°-Π½ΠΈΠ±ΡƒΠ΄ΡŒ появятся. ΠœΠ½ΠΎΠ³ΠΎΡΠ»ΠΎΠΉΠ½Ρ‹Π΅ Π΄ΠΆΠ΅Π½Π΅Ρ€ΠΈΠΊΠΈ ΠΈ callable с callable Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ просто ΠΏΠΎΠ»ΠΎΠΆΠ°Ρ‚ Ρ€Π°Π½Ρ‚Π°ΠΉΠΌ. Π’Π°ΠΊΠΆΠ΅ Π±ΡƒΠ΄ΡƒΡ‚ Ρ‚ΠΎΡ€ΠΌΠΎΠ·ΠΈΡ‚ΡŒ Ρ€Π°Π½Ρ‚Π°ΠΉΠΌ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ² для Ρ‡Π»Π΅Π½ΠΎΠ² класса ΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… мСстах.

2) Ошибки Π²Ρ‹ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²ΠΎ врСмя запуска. Π’.Π΅. всСгда Π±ΡƒΠ΄ΡƒΡ‚ ситуации, ΠΊΠΎΠ³Π΄Π° Π² ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ Ρ…ΠΈΡ‚Ρ€ΠΎΠΉ ситуации ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ сдСлаСт Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π½Π΅ прСдусмотрСнноС тСстами, ΠΈ всё повалится

ВмСсто Π²Ρ‹Π²ΠΎΠ΄ΠΎΠ²

Π₯отя (с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Ρ‚ΠΈΠΏΠΎΠ² ΠΈ ООП) Π½Π° ΠΌΠΎΠΉ взгляд php Π½Π° Π³ΠΎΠ»ΠΎΠ²Ρƒ Π²Ρ‹ΡˆΠ΅, Ρ‡Π΅ΠΌ javascript, ΠΈ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для написания слоТных ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Π½ΠΎ ΠΏΡ€ΠΈ этом, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π½Π΅ дотягиваСт Π΄ΠΎ java/c#/typescript, ΠΈ навряд Π»ΠΈ ΠΊΠΎΠ³Π΄Π°-Π½ΠΈΠ±ΡƒΠ΄ΡŒ дотянСтся (см “Π€Π°Ρ‚Π°Π»ΡŒΠ½Π°Ρ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°”). ΠŸΠΎΠ²Ρ‚ΠΎΡ€ΡŽΡΡŒ, Π½Π΅ дотянСтся ΠΈΠΌΠ΅Π½Π½ΠΎ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния систСмы Ρ‚ΠΈΠΏΠΎΠ², Π² ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… Π²Π΅Ρ‰Π°Ρ… Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ прСдпочтСния Π² Ρ‚Ρƒ ΠΈΠ»ΠΈ ΠΈΠ½ΡƒΡŽ сторону.

ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π² ΠΏΠΎ-настоящСму слоТных прилоТСниях Π½Π°Π΄ΠΎ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ всё ΠΎΠ±ΠΊΠ»Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒ тСстами. Π’Π°ΠΊΠΆΠ΅, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎ phpdoc Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ слоТных callable с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ, ΠΈ IDE научатся ΠΈΡ… ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π’Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ язык программирования: Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ ΠΎ PHP

РассказываСм ΠΏΡ€ΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· самых популярных языков Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π§Π΅ΠΌ ΠΎΠ½ отличаСтся ΠΎΡ‚ JavaScript ΠΈ Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΉΡ‚ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρƒ.

какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π€ΠΎΡ‚ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы

какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π€ΠΎΡ‚ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы

Когда PHP Ρ‚ΠΎΠ»ΡŒΠΊΠΎ появился, ΠΎΠ½ Π±Ρ‹Π» ΠΏΠΎΠ»ΠΎΠ½ Π±Π°Π³ΠΎΠ² ΠΈ нСдостатков. МногиС ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ»ΠΈ Π΅Π³ΠΎ Ρ€ΡƒΠ³Π°Ρ‚ΡŒ, помня ΠΊΠ°ΠΊ «нСдоязык», Π½ΠΎ с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π΅Π³ΠΎ создания ΠΏΡ€ΠΎΡˆΠ»ΠΎ ΡƒΠΆΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅Ρ‚, Π° PHP ΠΏΠ΅Ρ€Π΅ΠΆΠΈΠ» ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΊ Π»ΡƒΡ‡ΡˆΠ΅ΠΌΡƒ. Как ΠΈ Ρƒ любого языка, Ρƒ PHP Π΅ΡΡ‚ΡŒ свои особСнности, Π½ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ это ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Ρ‹ΠΉ настоящий язык программирования.

БСйчас PHP β€” ΠΎΠ΄ΠΈΠ½ ΠΈΠ· самых популярных языков Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. ΠŸΠΎΡ‡Ρ‚ΠΈ вСсь Facebook написан Π½Π° PHP. Из Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² β€” WordPress, Wikipedia, Yahoo ΠΈ Tumblr.

PHP β€” это скриптовый (сцСнарный) язык ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния. На сцСнарных языках ΠΏΠΈΡˆΡƒΡ‚ сцСнарии ΠΈΠ»ΠΈ скрипты β€” ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ½Π°Ρ‡Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π΄Π΅Π»Π°Π» Π±Ρ‹ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ). Π‘ΠΊΡ€ΠΈΠΏΡ‚Ρ‹ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ошибок, ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ врСмя ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π½Π΅ боясь, Ρ‡Ρ‚ΠΎ всё ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ΅ пСрСстанСт Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° языков, скриптовым языкам Π½Π΅ Π½ΡƒΠΆΠ½Π° компиляция, ΠΈ ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² основном для Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Ρ€ΡƒΡ‚ΠΈΠ½Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡.

Π’Π°ΠΆΠ½ΠΎ!Π Π°Π±ΠΎΡ‚Π° PHP тСсно связана с CSS ΠΈ HTML. Π’ΠΎ Π΅ΡΡ‚ΡŒ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΡ‚Π°Ρ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ, нСдостаточно Π²Ρ‹ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ PHP.

какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π€ΠΎΡ‚ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы

Π’ бэкграундС β€” ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, французский язык, акадСмичСскоС рисованиС, капоэйра. БСйчас ΡƒΡ‡ΠΈΡ‚ финский. Π›ΡŽΠ±ΠΈΡ‚ ΠΏΡƒΡ‚Π΅ΡˆΠ΅ΡΡ‚Π²ΠΈΡ ΠΈ БалтийскоС ΠΌΠΎΡ€Π΅.

Π—Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ΅Π½ PHP

PHP создавался для Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, ΠΈ для этого ΠΎΠ½ Π² основном ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, ΠΏΡ€ΠΈΡ‡Ρ‘ΠΌ Π² основном для backend-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ сСрвСрной стороны сайта. На Π½Ρ‘ΠΌ часто ΠΏΠΈΡˆΡƒΡ‚ динамичСскиС страницы ΠΈ нСбольшиС Π²Π΅Π±-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’ΠΎΡ‚ нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² Π΅Π³ΠΎ использования:

ΠŸΠ»ΡŽΡΡ‹, минусы ΠΈ особСнности PHP

Начнём с особСнностСй. Π£ PHP слабая динамичСская типизация: это Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Ρ‚ΠΈΠΏΡ‹ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ Π²ΠΎ врСмя выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ€Π°Π·Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ вмСстС, Π° нСявныС прСобразования Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ автоматичСски.

Вакая типизация β€” это ΠΈ плюс, ΠΈ минус. Π‘ ΠΎΠ΄Π½ΠΎΠΉ стороны, ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΡ‰Π΅, Π³ΠΈΠ±Ρ‡Π΅, ΠΎΠ½ Π»ΡƒΡ‡ΡˆΠ΅ читаСтся ΠΈ Π΅Π³ΠΎ Π»Π΅Π³Ρ‡Π΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ, Π½ΠΎ, с Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ ошибок Π²Ρ‹ΡˆΠ΅, Π° Π½Π°ΠΉΠ΄Ρ‘Ρ‚Π΅ Π²Ρ‹ ΠΈΡ… ΡƒΠΆΠ΅ послС запуска ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

ΠŸΠ»ΡŽΡΡ‹

Как Π²ΠΈΠ΄ΠΈΡ‚Π΅, синтаксис ΠΎΡ‡Π΅Π½ΡŒ простой, Π½ΠΎ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ PHP вставлСн Π² HTML, ΠΈ Ρ‚ΠΎΠ³Π΄Π° Ρ‚ΠΎ ΠΆΠ΅ самоС выглядит Π²ΠΎΡ‚ Ρ‚Π°ΠΊ:

НСсмотря Π½Π° Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ этот ΠΊΠΎΠ΄ ΡƒΠΆΠ΅ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π΄Π»ΠΈΠ½Π½Π΅Π΅, ΠΎΠ½ всё Ρ€Π°Π²Π½ΠΎ простой ΠΈ Π»Π΅Π³ΠΊΠΎ читаСтся.

ΠœΠΈΠ½ΡƒΡΡ‹

PHP ΠΏΡ€ΠΎΡ‚ΠΈΠ² JavaScript

JavaScript ΠΈ PHP ΠΏΠ΅Ρ€Π²Ρ‹ΠΌΠΈ приходят Π½Π° ΡƒΠΌ, ΠΊΠΎΠ³Π΄Π° Π΄ΡƒΠΌΠ°Π΅ΡˆΡŒ ΠΎ Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅. Оба достаточно простыС скриптовыС языки, ΠΎΠ±Π° Π½Π΅ зависят ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ часто Π²ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ Π² HTML. МногиС Π²Π΅Π±-страницы Π΄Π°ΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΎΠ±Π° эти языка. ΠŸΠΎΡ‡Π΅ΠΌΡƒ Ρ‚Π°ΠΊ, ΠΈ Ρ‡Π΅ΠΌ ΠΎΠ½ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ?

Какой язык Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ? Если Π²Ρ‹ создаётС одностраничныС динамичСскиС сайты ΠΈΠ»ΠΈ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ frontend-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ, Ρ‚ΠΎ стоит Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ JavaScript, Π° Ссли Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ с CMS Ρ‚ΠΈΠΏΠ° WordPress, ΠΈΠ»ΠΈ с Ρ‚Π°ΠΊΠΈΠΌΠΈ сСрвСрами, ΠΊΠ°ΠΊ MySQL, SQL, MariaDB, Oracle ΠΈ Sybase, Ρ‚ΠΎ Π»ΡƒΡ‡ΡˆΠΈΠΉ Π²Ρ‹Π±ΠΎΡ€ β€” PHP.

Π’ΠΎΡΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½Π½ΠΎΡΡ‚ΡŒ ΠΈ Π·Π°Ρ€ΠΏΠ»Π°Ρ‚Π°

Благодаря простотС PHP Ρ‚Π°ΠΊΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΌΠ½ΠΎΠ³ΠΎ, Π½ΠΎ ΠΈ вакансий Ρ‚ΠΎΠΆΠ΅: HH.ru ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ 900 ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² МосквС, Π° ЯндСкс.Π Π°Π±ΠΎΡ‚Π° β€” Π±ΠΎΠ»Π΅Π΅ 1100 (Π΄Π°Π½Π½Ρ‹Π΅ Π·Π° Π΄Π΅ΠΊΠ°Π±Ρ€ΡŒ 2019 Π³ΠΎΠ΄Π°).

ВрСбования. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Ρ€Π°Π±ΠΎΡ‚ΠΎΠ΄Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΎΠΆΠΈΠ΄Π°ΡŽΡ‚ ΠΎΡ‚ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ‚Π° знания Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ PHP, Π½ΠΎ ΠΈ HTML, CSS ΠΈ JavaScript. НСрСдкоС Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ β€” ΠΎΠΏΡ‹Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с MySQL, систСмой управлСния Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ….

Π—Π°Ρ€ΠΏΠ»Π°Ρ‚Ρ‹ PHP-программистов Π² МосквС Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ Π² срСднСм ΠΎΡ‚ 70 тысяч Ρ€ΡƒΠ±Π»Π΅ΠΉ, junior-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°ΡΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Π½Π° Π·Π°Ρ€ΠΏΠ»Π°Ρ‚Ρƒ ΠΎΡ‚ 40 Π΄ΠΎ 90 тысяч Ρ€ΡƒΠ±Π»Π΅ΠΉ. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚Π°ΠΌ с ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ ΠΎΡ‚ 120 Π΄ΠΎ 200 тысяч Ρ€ΡƒΠ±Π»Π΅ΠΉ (информация собрана Π½Π° ЯндСкс.Π Π°Π±ΠΎΡ‚Π΅ ΠΈ HH.ru Π² Π΄Π΅ΠΊΠ°Π±Ρ€Π΅ 2019 Π³ΠΎΠ΄Π°).

Π Π΅Π·ΡŽΠΌΠΈΡ€ΡƒΠ΅ΠΌ

PHP β€” популярный язык для backend-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Ρƒ Π½Π΅Π³ΠΎ простой синтаксис ΠΈ Π΅Π³ΠΎ Π»Π΅Π³ΠΊΠΎ ΡƒΡ‡ΠΈΡ‚ΡŒ. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ Ссли Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° вас ΠΏΡ€ΠΈΠ²Π»Π΅ΠΊΠ°Π΅Ρ‚, Ρ‚ΠΎ это Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚: работая с PHP, Π²Ρ‹ Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ Π΅Ρ‰Ρ‘ ΠΈ HTML, CSS ΠΈ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅Ρ‚Π΅ сСбя Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. А Ссли Π½Π΅ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ, Ρ‚ΠΎ ΠΏΡ€ΠΈΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ΡΡŒ ΠΊ JavaScript ΠΈΠ»ΠΈ Python.

Если вас заинтСрСсовал PHP, Ρ‚ΠΎ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ Π΅ΠΌΡƒ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ наш курс Β«ΠŸΡ€ΠΎΡ„Π΅ΡΡΠΈΡ PHP-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΒ». На Π½Π°ΡˆΠΈΡ… курсах тСория сочСтаСтся с ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠΉ, занятия Π²Π΅Π΄ΡƒΡ‚ ΠΏΡ€Π΅ΠΏΠΎΠ΄Π°Π²Π°Ρ‚Π΅Π»ΠΈ с большим ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ программирования, Π° Π»ΠΈΡ‡Π½Ρ‹ΠΉ наставник даст Π²Π°ΠΌ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ связь ΠΏΠΎ вашим Ρ€Π°Π±ΠΎΡ‚Π°ΠΌ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы

null (отсутствиС значСния)

int (цСлочислСнный Ρ‚ΠΈΠΏ)

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΠ΅Ρ‚ Ρ†Π΅Π»ΠΎΠ΅ число со Π·Π½Π°ΠΊΠΎΠΌ.

ΠšΡ€ΠΎΠΌΠ΅ дСсятичных Ρ†Π΅Π»Ρ‹Ρ… чисСл PHP ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Π΅, Π²ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½Ρ‹Π΅ ΠΈ ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½Ρ‹Π΅ числа. Π¨Π°Π±Π»ΠΎΠ½Ρ‹ чисСл для Π΄Ρ€ΡƒΠ³ΠΈΡ… систСм:

Π’ΠΈΠΏ float (числа с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ)

Π Π°Π·ΠΌΠ΅Ρ€ числа с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ зависит ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Максимально Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, составляСт 1.8*10 308 с Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ ΠΎΠΊΠΎΠ»ΠΎ 14 дСсятичных Ρ†ΠΈΡ„Ρ€. НапримСр:

Π’ΠΈΠΏ bool (логичСский Ρ‚ΠΈΠΏ)

Π’ΠΈΠΏ string (строки)

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с тСкстом ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ строки. Π‘Ρ‚Ρ€ΠΎΠΊΠΈ Π±Ρ‹Π²Π°ΡŽΡ‚ Π΄Π²ΡƒΡ… Ρ‚ΠΈΠΏΠΎΠ²: Π² Π΄Π²ΠΎΠΉΠ½Ρ‹Ρ… ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ°Ρ… ΠΈ ΠΎΠ΄ΠΈΠ½Π°Ρ€Π½Ρ‹Ρ…. ΠžΡ‚ Ρ‚ΠΈΠΏΠ° ΠΊΠ°Π²Ρ‹Ρ‡Π΅ΠΊ зависит ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° строк ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ΠΎΠΌ. Π’Π°ΠΊ, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π² Π΄Π²ΠΎΠΉΠ½Ρ‹Ρ… ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ°Ρ… Π·Π°ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ значСниями, Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π² ΠΎΠ΄ΠΈΠ½Π°Ρ€Π½Ρ‹Ρ… ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ°Ρ… ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ.

Π’ этом случаС ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π²Ρ‹Π²ΠΎΠ΄:

ΠšΡ€ΠΎΠΌΠ΅ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… символов, строка ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ символы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹. НапримСр, Π½Π°ΠΌ Π½Π°Π΄ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² строку ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΡƒ:

Данная запись Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½Π°. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΎΡ‡Π΅Ρ‚Π°Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ ΠΊΠ°Π²Ρ‹Ρ‡Π΅ΠΊ (‘МодСль “Apple II”‘ ΠΈΠ»ΠΈ “МодСль ‘Apple III'”) ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ слСш, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ввСсти ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΡƒ Π² строку:

Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ null

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ null ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, пСрСмСнная Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ значСния. ИспользованиС Π΄Π°Π½Π½ΠΎΠ³ΠΎ значСния ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π² Ρ‚Π΅Ρ… случаях, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ пСрСмСнная Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ значСния. НапримСр, Ссли ΠΌΡ‹ просто ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Π±Π΅Π· Π΅Π΅ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, ΠΈ Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‚ΠΎ Π½Π°ΠΌ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ выдаст сообщСниС, Ρ‡Ρ‚ΠΎ пСрСмСнная Π½Π΅ установлСна:

ИспользованиС значСния null ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ Π΄Π°Π½Π½ΠΎΠΉ ситуации. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΌΡ‹ смоТСм ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ значСния ΠΈ Π² зависимости ΠΎΡ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Ρ‚Π΅ ΠΈΠ»ΠΈ ΠΈΠ½Ρ‹Π΅ дСйствия:

ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Π° null Π½Π΅ Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Π° ΠΊ рСгистру, поэтому ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΈ Ρ‚Π°ΠΊ:

ДинамичСская типизация

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы

БистСмы Ρ‚ΠΈΠΏΠΎΠ² Π² языкС β€” ΠΊΠ°ΠΊΠΈΠ΅ Π±Ρ‹Π²Π°ΡŽΡ‚ ΠΈ Ρ‡Π΅ΠΌ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ

какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π€ΠΎΡ‚ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы

Π’ языках программирования Ρƒ любого кусочка Π΄Π°Π½Π½Ρ‹Ρ… (ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, константы, Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ) Π΅ΡΡ‚ΡŒ Ρ‚ΠΈΠΏ. Π’ΠΈΠΏ опрСдСляСт мноТСство Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ с Π½ΠΈΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ. НапримСр, Π² этом участкС псСвдокода пСрСмСнная age ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ «число»:

Π’ Ρ€Π°Π·Π½Ρ‹Ρ… языках ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ устроСна Ρ€Π°Π±ΠΎΡ‚Π° с Ρ‚ΠΈΠΏΠ°ΠΌΠΈ. Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Π΅ΠΌ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ Ρ€Π°Π·Π½Ρ‹Π΅ систСмы Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΌΠ΅Π»ΠΎ ΠΈ ΠΊ мСсту ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΡ‚ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ язык.

Π’ΠΎΠΎΠ±Ρ‰Π΅, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ «бСстиповыС языки», Π³Π΄Π΅ вся Ρ€Π°Π±ΠΎΡ‚Π° с Ρ‚ΠΈΠΏΠ°ΠΌΠΈ возлагаСтся Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°. Но Ρ‚Π°ΠΊΠΈΡ… языков Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΈ ΠΎΠ½ΠΈ довольно Ρ€Π΅Π΄ΠΊΠΈΠ΅. Один ΠΈΠ· ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² β€” язык ассСмблСра (ΠΎΡ‡Π΅Π½ΡŒ Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΉ язык программирования).

Бильная β€” слабая

Π’ ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ систСмы Ρ‚ΠΈΠΏΠΎΠ² дСлятся ΠΏΠΎ способу привСдСния Ρ‚ΠΈΠΏΠΎΠ².

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ² β€” это ΠΏΡ€Π΅Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° Π² Π΄Π°Π½Π½Ρ‹Π΅ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°. НапримСр, строку Β«12Β» довольно Π»Π΅Π³ΠΊΠΎ ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π² число 12:

НСкоторыС языки сами приводят Ρ‚ΠΈΠΏΡ‹, Π΄Π΅Π»Π°ΡŽΡ‚ это скрыто ΠΎΡ‚ программиста. Π’Π°ΠΊΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ принято Π½Π°Π·Π²Π°Ρ‚ΡŒ слабой (ΠΈΠ»ΠΈ нСстрогой) Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ, это позволяСт Π² ΠΎΠ΄Π½ΠΎΠΌ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π»ΡŽΠ±Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² ΠΈ Π½Π΅ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡ‚ΡŒΡΡ ΠΎΠ± ΠΈΡ… ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠΈ. Часто это ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ послСдствиям.

Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны стоят языки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ явно ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ слСдуСт Π΄Π΅Π»Π°Ρ‚ΡŒ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ пСрСвСсти ΠΈΡ… Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ‚ΠΈΠΏ. Они ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΎΡ‚Π΄Π°ΡŽΡ‚ эту Ρ€Π°Π±ΠΎΡ‚Ρƒ программисту. Π­Ρ‚ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ называСтся сильной (ΠΈΠ»ΠΈ строгой) Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ.

Иногда Π±Ρ‹Π²Π°Π΅Ρ‚ слоТно провСсти Ρ‡Π΅Ρ€Ρ‚Ρƒ ΠΌΠ΅ΠΆΠ΄Ρƒ сильной ΠΈ слабой Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ. Π’ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… языках Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ прСобразования происходят автоматичСски, Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ явного привСдСния Ρ‚ΠΈΠΏΠΎΠ². Π‘Ρ‚Ρ€ΠΎΠ³ΠΎΡΡ‚ΡŒ Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠΈ β€” это шкала, ΠΈ язык ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒΡΡ Π½Π° Π½Π΅ΠΉ Π³Π΄Π΅ ΡƒΠ³ΠΎΠ΄Π½ΠΎ.

БтатичСская β€” динамичСская

Другая ваТная классификация Π΄Π΅Π»ΠΈΡ‚ языки Π½Π° статичСски Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΈ динамичСски Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅.

Π’ статичСски Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ языкС каТдая пСрСмСнная ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ Ρ‚ΠΈΠΏ Π½Π° всСм протяТСнии ΠΆΠΈΠ·Π½ΠΈ, ΠΎΠ½ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒΡΡ Π²ΠΎ врСмя выполнСния. Π’ΠΎ Π΅ΡΡ‚ΡŒ всС Ρ‚ΠΈΠΏΡ‹ извСстны Π΅Ρ‰Ρ‘ Π½Π° этапС написания ΠΊΠΎΠ΄Π°. Если ΠΆΠ΅ Π²ΠΎ врСмя выполнСния ΠΏΠΎΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈΡΠ²ΠΎΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°, ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚ ошибка. ΠŸΡ€ΠΈΡ‡Ρ‘ΠΌ Ρ‚Π°ΠΊΠΈΠ΅ ошибки ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π±Π΅Π· запуска ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

ДинамичСски Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ языки Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΈΠ½Π°Ρ‡Π΅. Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ всё Π΅Ρ‰Ρ‘ Π΅ΡΡ‚ΡŒ Ρ‚ΠΈΠΏ. Но ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π»Π΅Π³ΠΊΠΎ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΏΠΎ Ρ…ΠΎΠ΄Ρƒ исполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. На ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π² ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΌΡ‹ достовСрно Π½Π΅ Π·Π½Π°Π΅ΠΌ, Π΄Π°Π½Π½Ρ‹Π΅ ΠΊΠ°ΠΊΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° находятся Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ.

И Ρ‡Ρ‚ΠΎ Π»ΡƒΡ‡ΡˆΠ΅?

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π»ΡƒΡ‡ΡˆΠ΅. КаТдая систСма Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ свои ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. ДинамичСская типизация ΠΏΡ€ΠΎΡ‰Π΅ ΠΈ ΡƒΠ΄ΠΎΠ±Π½Π΅Π΅ Π½Π° Ρ€Π°Π½Π½ΠΈΡ… этапах Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, статичСская типизация обСспСчиваСт Π±ΠΎΠ»Π΅Π΅ Π²Ρ‹ΡΠΎΠΊΡƒΡŽ ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ надёТности. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, слабая типизация позволяСт Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΠΌΡ„ΠΎΡ€Ρ‚Π½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄, Π½Π΅ Π·Π°Π±ΠΎΡ‚ΠΈΡ‚ΡŒΡΡ ΠΎ прСобразованиях Ρ‚ΠΈΠΏΠΎΠ² ΠΈ ΠΎΡ‚Π΄Π°Ρ‚ΡŒ это Π½Π° ΠΎΡ‚ΠΊΡƒΠΏ языку, Π° сильная позволяСт Π»ΡƒΡ‡ΡˆΠ΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ исполнСниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΠΈΠΌΠ΅Ρ‚ΡŒ большС увСрСнности Π² коррСктности написанного.

На ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅

ΠœΠΈΡ€ программирования Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π΅Π½, Π² Π½Ρ‘ΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡ‚Ρ€Π΅Ρ‚ΠΈΡ‚ΡŒ языки с Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ Π»ΡŽΠ±Ρ‹ΠΌΠΈ комбинациями систСм Ρ‚ΠΈΠΏΠΎΠ², Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

ΠŸΡ€ΠΈ этом для ΠΌΠ½ΠΎΠ³ΠΈΡ… языков ΠΏΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ инструмСнты, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ Π±Ρ€Π°Ρ‚ΡŒ Π»ΡƒΡ‡ΡˆΠΈΠ΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΠΈΠ· всСх систСм Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠΈ. НапримСр, Π² Python появились ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ Ρ‚ΠΈΠΏΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ принСсти Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ статичСской Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠΈ. АналогичныС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ Π΅ΡΡ‚ΡŒ для JavaScript (TypeScript, Flow) ΠΈ Ruby (Sorbet).

Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅

Как ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π² JavaScript с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ JSDoc: ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠ΅ руководство.

Π’Ρ‹Π±ΠΈΡ€Π°Π΅ΠΌ язык программирования: Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ ΠΎ PHP

РассказываСм ΠΏΡ€ΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· самых популярных языков Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π§Π΅ΠΌ ΠΎΠ½ отличаСтся ΠΎΡ‚ JavaScript ΠΈ Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΉΡ‚ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρƒ.

Когда PHP Ρ‚ΠΎΠ»ΡŒΠΊΠΎ появился, ΠΎΠ½ Π±Ρ‹Π» ΠΏΠΎΠ»ΠΎΠ½ Π±Π°Π³ΠΎΠ² ΠΈ нСдостатков. МногиС ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ»ΠΈ Π΅Π³ΠΎ Ρ€ΡƒΠ³Π°Ρ‚ΡŒ, помня ΠΊΠ°ΠΊ «нСдоязык», Π½ΠΎ с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π΅Π³ΠΎ создания ΠΏΡ€ΠΎΡˆΠ»ΠΎ ΡƒΠΆΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅Ρ‚, Π° PHP ΠΏΠ΅Ρ€Π΅ΠΆΠΈΠ» ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΊ Π»ΡƒΡ‡ΡˆΠ΅ΠΌΡƒ. Как ΠΈ Ρƒ любого языка, Ρƒ PHP Π΅ΡΡ‚ΡŒ свои особСнности, Π½ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ это ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Ρ‹ΠΉ настоящий язык программирования.

БСйчас PHP β€” ΠΎΠ΄ΠΈΠ½ ΠΈΠ· самых популярных языков Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. ΠŸΠΎΡ‡Ρ‚ΠΈ вСсь Facebook написан Π½Π° PHP. Из Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² β€” WordPress, Wikipedia, Yahoo ΠΈ Tumblr.

PHP β€” это скриптовый (сцСнарный) язык ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния. На сцСнарных языках ΠΏΠΈΡˆΡƒΡ‚ сцСнарии ΠΈΠ»ΠΈ скрипты β€” ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ½Π°Ρ‡Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π΄Π΅Π»Π°Π» Π±Ρ‹ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ). Π‘ΠΊΡ€ΠΈΠΏΡ‚Ρ‹ ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ошибок, ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ врСмя ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π½Π΅ боясь, Ρ‡Ρ‚ΠΎ всё ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠ΅ пСрСстанСт Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° языков, скриптовым языкам Π½Π΅ Π½ΡƒΠΆΠ½Π° компиляция, ΠΈ ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² основном для Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Ρ€ΡƒΡ‚ΠΈΠ½Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡.

Π’Π°ΠΆΠ½ΠΎ!Π Π°Π±ΠΎΡ‚Π° PHP тСсно связана с CSS ΠΈ HTML. Π’ΠΎ Π΅ΡΡ‚ΡŒ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΡ‚Π°Ρ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ, нСдостаточно Π²Ρ‹ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ PHP.

какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π€ΠΎΡ‚ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы

Π’ бэкграундС β€” ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, французский язык, акадСмичСскоС рисованиС, капоэйра. БСйчас ΡƒΡ‡ΠΈΡ‚ финский. Π›ΡŽΠ±ΠΈΡ‚ ΠΏΡƒΡ‚Π΅ΡˆΠ΅ΡΡ‚Π²ΠΈΡ ΠΈ БалтийскоС ΠΌΠΎΡ€Π΅.

Π—Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ΅Π½ PHP

PHP создавался для Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, ΠΈ для этого ΠΎΠ½ Π² основном ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, ΠΏΡ€ΠΈΡ‡Ρ‘ΠΌ Π² основном для backend-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ сСрвСрной стороны сайта. На Π½Ρ‘ΠΌ часто ΠΏΠΈΡˆΡƒΡ‚ динамичСскиС страницы ΠΈ нСбольшиС Π²Π΅Π±-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’ΠΎΡ‚ нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² Π΅Π³ΠΎ использования:

ΠŸΠ»ΡŽΡΡ‹, минусы ΠΈ особСнности PHP

Начнём с особСнностСй. Π£ PHP слабая динамичСская типизация: это Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Ρ‚ΠΈΠΏΡ‹ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ΡΡ Π²ΠΎ врСмя выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ρ€Π°Π·Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ вмСстС, Π° нСявныС прСобразования Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ автоматичСски.

Вакая типизация β€” это ΠΈ плюс, ΠΈ минус. Π‘ ΠΎΠ΄Π½ΠΎΠΉ стороны, ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΡ‰Π΅, Π³ΠΈΠ±Ρ‡Π΅, ΠΎΠ½ Π»ΡƒΡ‡ΡˆΠ΅ читаСтся ΠΈ Π΅Π³ΠΎ Π»Π΅Π³Ρ‡Π΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ, Π½ΠΎ, с Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ ошибок Π²Ρ‹ΡˆΠ΅, Π° Π½Π°ΠΉΠ΄Ρ‘Ρ‚Π΅ Π²Ρ‹ ΠΈΡ… ΡƒΠΆΠ΅ послС запуска ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

ΠŸΠ»ΡŽΡΡ‹

Как Π²ΠΈΠ΄ΠΈΡ‚Π΅, синтаксис ΠΎΡ‡Π΅Π½ΡŒ простой, Π½ΠΎ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ PHP вставлСн Π² HTML, ΠΈ Ρ‚ΠΎΠ³Π΄Π° Ρ‚ΠΎ ΠΆΠ΅ самоС выглядит Π²ΠΎΡ‚ Ρ‚Π°ΠΊ:

НСсмотря Π½Π° Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ этот ΠΊΠΎΠ΄ ΡƒΠΆΠ΅ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π΄Π»ΠΈΠ½Π½Π΅Π΅, ΠΎΠ½ всё Ρ€Π°Π²Π½ΠΎ простой ΠΈ Π»Π΅Π³ΠΊΠΎ читаСтся.

ΠœΠΈΠ½ΡƒΡΡ‹

PHP ΠΏΡ€ΠΎΡ‚ΠΈΠ² JavaScript

JavaScript ΠΈ PHP ΠΏΠ΅Ρ€Π²Ρ‹ΠΌΠΈ приходят Π½Π° ΡƒΠΌ, ΠΊΠΎΠ³Π΄Π° Π΄ΡƒΠΌΠ°Π΅ΡˆΡŒ ΠΎ Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅. Оба достаточно простыС скриптовыС языки, ΠΎΠ±Π° Π½Π΅ зависят ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈ часто Π²ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ Π² HTML. МногиС Π²Π΅Π±-страницы Π΄Π°ΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΎΠ±Π° эти языка. ΠŸΠΎΡ‡Π΅ΠΌΡƒ Ρ‚Π°ΠΊ, ΠΈ Ρ‡Π΅ΠΌ ΠΎΠ½ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ?

Какой язык Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ? Если Π²Ρ‹ создаётС одностраничныС динамичСскиС сайты ΠΈΠ»ΠΈ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ frontend-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ, Ρ‚ΠΎ стоит Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ JavaScript, Π° Ссли Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ с CMS Ρ‚ΠΈΠΏΠ° WordPress, ΠΈΠ»ΠΈ с Ρ‚Π°ΠΊΠΈΠΌΠΈ сСрвСрами, ΠΊΠ°ΠΊ MySQL, SQL, MariaDB, Oracle ΠΈ Sybase, Ρ‚ΠΎ Π»ΡƒΡ‡ΡˆΠΈΠΉ Π²Ρ‹Π±ΠΎΡ€ β€” PHP.

Π’ΠΎΡΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½Π½ΠΎΡΡ‚ΡŒ ΠΈ Π·Π°Ρ€ΠΏΠ»Π°Ρ‚Π°

Благодаря простотС PHP Ρ‚Π°ΠΊΠΈΡ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΌΠ½ΠΎΠ³ΠΎ, Π½ΠΎ ΠΈ вакансий Ρ‚ΠΎΠΆΠ΅: HH.ru ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ 900 ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π² МосквС, Π° ЯндСкс.Π Π°Π±ΠΎΡ‚Π° β€” Π±ΠΎΠ»Π΅Π΅ 1100 (Π΄Π°Π½Π½Ρ‹Π΅ Π·Π° Π΄Π΅ΠΊΠ°Π±Ρ€ΡŒ 2019 Π³ΠΎΠ΄Π°).

ВрСбования. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Ρ€Π°Π±ΠΎΡ‚ΠΎΠ΄Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΎΠΆΠΈΠ΄Π°ΡŽΡ‚ ΠΎΡ‚ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ‚Π° знания Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ PHP, Π½ΠΎ ΠΈ HTML, CSS ΠΈ JavaScript. НСрСдкоС Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ β€” ΠΎΠΏΡ‹Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с MySQL, систСмой управлСния Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ….

Π—Π°Ρ€ΠΏΠ»Π°Ρ‚Ρ‹ PHP-программистов Π² МосквС Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ Π² срСднСм ΠΎΡ‚ 70 тысяч Ρ€ΡƒΠ±Π»Π΅ΠΉ, junior-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°ΡΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ Π½Π° Π·Π°Ρ€ΠΏΠ»Π°Ρ‚Ρƒ ΠΎΡ‚ 40 Π΄ΠΎ 90 тысяч Ρ€ΡƒΠ±Π»Π΅ΠΉ. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚Π°ΠΌ с ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ ΠΎΡ‚ 120 Π΄ΠΎ 200 тысяч Ρ€ΡƒΠ±Π»Π΅ΠΉ (информация собрана Π½Π° ЯндСкс.Π Π°Π±ΠΎΡ‚Π΅ ΠΈ HH.ru Π² Π΄Π΅ΠΊΠ°Π±Ρ€Π΅ 2019 Π³ΠΎΠ΄Π°).

Π Π΅Π·ΡŽΠΌΠΈΡ€ΡƒΠ΅ΠΌ

PHP β€” популярный язык для backend-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Ρƒ Π½Π΅Π³ΠΎ простой синтаксис ΠΈ Π΅Π³ΠΎ Π»Π΅Π³ΠΊΠΎ ΡƒΡ‡ΠΈΡ‚ΡŒ. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ Ссли Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° вас ΠΏΡ€ΠΈΠ²Π»Π΅ΠΊΠ°Π΅Ρ‚, Ρ‚ΠΎ это Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚: работая с PHP, Π²Ρ‹ Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ Π΅Ρ‰Ρ‘ ΠΈ HTML, CSS ΠΈ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅Ρ‚Π΅ сСбя Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. А Ссли Π½Π΅ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ, Ρ‚ΠΎ ΠΏΡ€ΠΈΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ΡΡŒ ΠΊ JavaScript ΠΈΠ»ΠΈ Python.

Если вас заинтСрСсовал PHP, Ρ‚ΠΎ Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ Π΅ΠΌΡƒ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ наш курс Β«ΠŸΡ€ΠΎΡ„Π΅ΡΡΠΈΡ PHP-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΒ». На Π½Π°ΡˆΠΈΡ… курсах тСория сочСтаСтся с ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠΉ, занятия Π²Π΅Π΄ΡƒΡ‚ ΠΏΡ€Π΅ΠΏΠΎΠ΄Π°Π²Π°Ρ‚Π΅Π»ΠΈ с большим ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ программирования, Π° Π»ΠΈΡ‡Π½Ρ‹ΠΉ наставник даст Π²Π°ΠΌ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ связь ΠΏΠΎ вашим Ρ€Π°Π±ΠΎΡ‚Π°ΠΌ.

Достоинства ΠΈ Ρ„Π°Ρ‚Π°Π»ΡŒΠ½Ρ‹Π΅ нСдостатки Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠΈ Π² php

какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π€ΠΎΡ‚ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусыЯзык php часто Ρ€ΡƒΠ³Π°ΡŽΡ‚, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ нСобоснованно. ОсобСнно удивляСт, Ρ‡Ρ‚ΠΎ javascript Ρ€ΡƒΠ³Π°ΡŽΡ‚ мСньшС. Π—Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ это Π΄Π΅Π»Π°ΡŽΡ‚ люди, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ писали Π½Π° Π½Π΅ΠΌ 10+ Π»Π΅Ρ‚ Π½Π°Π·Π°Π΄, ΠΊΠΎΠ³Π΄Π° язык Π±Ρ‹Π» Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ чСртовски ΠΏΠ»ΠΎΡ…, Π΄Π° ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π² Ρ‚Π΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π° Π½Π΅ Π·Π°Π΄ΡƒΠΌΡ‹Π²Π°Π»ΠΈΡΡŒ Π½Π°Π΄ качСством ΠΊΠΎΠ΄Π°. ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ хотя Π±Ρ‹ Π½Π° ΠΊΠΎΠ΄ wordpress, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄ΠΎ сих ΠΏΠΎΡ€ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ шок.

Π ΡƒΠ³Π°ΡŽΡ‚ нСобоснованно, Π½ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Ρƒ языка, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅, Π΅ΡΡ‚ΡŒ, ΠΈ ΠΎΠ½ΠΈ ΡΠ΅Ρ€ΡŒΡ‘Π·Π½Ρ‹Π΅. РазумСтСся, Ссли ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ послСдниС Ρ€Π΅Π»ΠΈΠ·Ρ‹ php7 (с Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ ООП ΠΈ строгим Ρ‚Π°ΠΉΠΏΡ…ΠΈΠ½Ρ‚ΠΈΠ½Π³ΠΎΠΌ) ΠΈ php4, Ρ‚ΠΎ Ρ€Π°Π·Π½ΠΈΡ†Π° Π±ΡƒΠ΄Π΅Ρ‚ колоссальная. Однако ΠΈ Π² послСдних вСрсиях языка Π½Π΅ всё Π³Π»Π°Π΄ΠΊΠΎ, ΠΈ Π΄ΠΎ java/c# ΠΏΠΎΠΊΠ° Ρ‡Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ Π΄Π°Π»Π΅ΠΊΠΎ. Π‘ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΠ³ΠΎ, Π±Π΅Ρ€ΡƒΡΡŒ ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π±ΡƒΠ΄ΡƒΡ‰Π΅Π΅ php Ρ‚ΠΎΠΆΠ΅ довольно ΡΠΎΠΌΠ½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ (с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Ρ‚ΠΈΠΏΠΎΠ²).

Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, Π΄Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚Π½ΠΎ, Ρ‡Ρ‚ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΈ Ρ‡Ρ‚ΠΎ ΠΏΠ»ΠΎΡ…ΠΎ Π² php с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠΈ.

Π’Π°ΠΉΠΏ Ρ…ΠΈΠ½Ρ‚ΠΈΠ½Π³ΠΈ

Для Π½Π°Ρ‡Π°Π»Π° Π΄Π°Π²Π°ΠΉΡ‚Π΅ разбСрСмся, для Ρ‡Π΅Π³ΠΎ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½ΡƒΠΆΠ½Ρ‹ Ρ‚Π°ΠΉΠΏΡ…ΠΈΠ½Ρ‚ΠΈΠ½Π³ΠΈ Π² php, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½ΠΈ Ρƒ ΠΊΠΎΠ³ΠΎ Π½Π΅ ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ вопросов Π° ля Β«Π·Π°Ρ‡Π΅ΠΌ эта лишняя писанина».

НСмного отвлСчСмся ΠΈ посмотрим кусок ΠΊΠΎΠ΄Π° Π½Π° javascript:

Π§Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎΠ± этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ? Она Π±Π΅Ρ€Π΅Ρ‚ ΠΊΠ°ΠΊΠΈΡ…-Ρ‚ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΡƒΠ΅Ρ‚ ΠΈΡ… ΠΏΠΎ возрасту. Но этого ΠΌΠ°Π»ΠΎ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ сразу Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ вопросы:

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ users? Массив? Или ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ Ρ…ΠΈΡ‚Ρ€Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚-коллСкция?
Возраст Π·Π°Π΄Π°Π½ ΠΊΠ°ΠΊ Ρ†Π΅Π»ΠΎΠ΅ число ΠΈΠ»ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π΄Ρ€ΠΎΠ±Π½Ρ‹ΠΌ?
ΠœΠΎΠΆΠ΅Ρ‚ Π»ΠΈ возраст Π±Ρ‹Ρ‚ΡŒ null?
Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π»ΠΈ эта фунция Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΆΠ΅ мСняСт ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½Ρ‹ΠΉ массив users?

Π§Ρ‚ΠΎΠ±Ρ‹ всё это ΠΏΠΎΠ½ΡΡ‚ΡŒ, Π½Π°Π΄ΠΎ ΠΏΡ€ΠΎΡ‡Π΅ΡΡ‚ΡŒ ΠΊΠΎΠ΄ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹Π·ΠΎΠ²Ρ‹ этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Ошибки Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚Π»ΠΎΠ²ΠΈΡ‚ΡŒ слоТно, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ язык Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€ΡƒΠ³Π°Ρ‚ΡŒΡΡ Π½ΠΈ Π½Π° ΠΊΠ°ΠΊΠΈΠ΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹, Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ ΠΈΡ… ΠΊΠ°ΠΊ-Ρ‚ΠΎ привСсти ΠΊ Π½ΡƒΠΆΠ½ΠΎΠΌΡƒ Ρ‚ΠΈΠΏΡƒ.

Как извСстно, программист Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ большС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°, Ρ‡Π΅ΠΌ Π½Π° написаниС Π½ΠΎΠ²ΠΎΠ³ΠΎ, поэтому отстутствиС подсказок Π² ΠΊΠΎΠ΄Π΅ являСтся Π·Π°Ρ‚Π°Ρ€ΠΌΠ°ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΠΌ Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ.

Для сравнСния ΠΊΠΎΠ΄ Π½Π° послСдних вСрсиях php:

Π’Ρ€ΠΎΠ΄Π΅ всё супСр, Π½ΠΎ Π΅ΡΡ‚ΡŒ Π½ΡŽΠ°Π½ΡΡ‹.

НСт Π΄ΠΆΠ΅Π½Π΅Ρ€ΠΈΠΊΠΎΠ²

НСт ΡƒΡ‚ΠΎΡ‡Π½Π΅Π½ΠΈΠΉ для Ρ‚ΠΈΠΏΠ° callable.

Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

Π§Ρ‚ΠΎ Π·Π° функция ΠΈΠ΄Π΅Ρ‚ Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΌ? Π§Ρ‚ΠΎ Π² Π½Π΅ΠΉ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ?

Волько Π² коммСнтариях ΠΊ ΠΊΠΎΠ΄Ρƒ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΌ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ, ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, Π΄Π²Π° Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°. ΠšΡΡ‚Π°Ρ‚ΠΈ, Π΅ΡΡ‚ΡŒ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ Π²ΠΈΠ΄Π° Π»ΠΆΠΈ: лоТь, наглая лоТь, статистика ΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΊ ΠΊΠΎΠ΄Ρƒ.

Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… языках, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π² TypeScript, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ прямо Π² объявлСнии Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

Π’.Π΅. здСсь Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° action Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ функция с двумя Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ (строка ΠΈ число), которая Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²ΠΎΠ·Ρ€Π²Π°Ρ‰Π°Π΅Ρ‚. Всё максимально явно, IDE ΠΈ компилятор сразу скаТут, Ссли Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ Π±Ρ‹Π» ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ Π½Π΅ Ρ‚Π°ΠΊΠΎΠΉ

Бтранности Ρ‚Π°ΠΉΠΏΡ…ΠΈΠ½Ρ‚ΠΈΠ½Π³Π° ΠΈ Ρ‚ΠΈΠΏΠ° Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° Π² связкС с наслСдованиСм

Π—Π΄Π΅ΡΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΎΡˆΠΈΠ±ΠΊΡƒ, Ρ‡Ρ‚ΠΎ findById Π½Π΅ совмСстим с findById ΠΈΠ· абстрактного класса.

Π’Π°ΠΊΠΎΠΉ ΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π² java Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ компилируСтся:

Π² TypeScript Ρ‚ΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ:

На это Π΄Π΅Π»ΠΎ врСмя ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΏΠΎΡΠ²Π»ΡΡŽΡ‚ΡΡ Π±Π°Π³ Ρ€Π΅ΠΏΠΎΡ€Ρ‚Ρ‹, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ исправлСно ΠΊΠΎΠ³Π΄Π°-Π½ΠΈΠ±ΡƒΠ΄ΡŒ:

Π€Π°Ρ‚Π°Π»ΡŒΠ½Π°Ρ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°

Бамая большая ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ php провСряСт Ρ‚ΠΈΠΏΡ‹ Π²ΠΎ врСмя выполнСния, Π° Π½Π΅ Π²ΠΎ врСмя компиляции. ΠŸΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ, Π½Π΅ смотря Π½Π° strict_types ΠΈ type hintings, это Π’ΠΠ•Π—ΠΠŸΠΠž Π½Π΅ строго Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ язык

ΠžΡ‚ΡΡŽΠ΄Π° слСдуСт Π΄Π²Π° Π²Ρ‹Π²ΠΎΠ΄Π°:

1) Π§Π΅ΠΌ большС ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ Π² Ρ€Π°Π½Ρ‚Π°ΠΉΠΌΠ΅, Ρ‚Π΅ΠΌ большС Ρ‚ΠΎΡ€ΠΌΠΎΠ·ΠΎΠ². ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ слишком слоТныС ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ навряд Π»ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ ΠΊΠΎΠ³Π΄Π°-Π½ΠΈΠ±ΡƒΠ΄ΡŒ появятся. ΠœΠ½ΠΎΠ³ΠΎΡΠ»ΠΎΠΉΠ½Ρ‹Π΅ Π΄ΠΆΠ΅Π½Π΅Ρ€ΠΈΠΊΠΈ ΠΈ callable с callable Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ просто ΠΏΠΎΠ»ΠΎΠΆΠ°Ρ‚ Ρ€Π°Π½Ρ‚Π°ΠΉΠΌ. Π’Π°ΠΊΠΆΠ΅ Π±ΡƒΠ΄ΡƒΡ‚ Ρ‚ΠΎΡ€ΠΌΠΎΠ·ΠΈΡ‚ΡŒ Ρ€Π°Π½Ρ‚Π°ΠΉΠΌ Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ‚ΠΈΠΏΠΎΠ² для Ρ‡Π»Π΅Π½ΠΎΠ² класса ΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… мСстах.

2) Ошибки Π²Ρ‹ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²ΠΎ врСмя запуска. Π’.Π΅. всСгда Π±ΡƒΠ΄ΡƒΡ‚ ситуации, ΠΊΠΎΠ³Π΄Π° Π² ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ Ρ…ΠΈΡ‚Ρ€ΠΎΠΉ ситуации ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ сдСлаСт Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π½Π΅ прСдусмотрСнноС тСстами, ΠΈ всё повалится

ВмСсто Π²Ρ‹Π²ΠΎΠ΄ΠΎΠ²

Π₯отя (с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Ρ‚ΠΈΠΏΠΎΠ² ΠΈ ООП) Π½Π° ΠΌΠΎΠΉ взгляд php Π½Π° Π³ΠΎΠ»ΠΎΠ²Ρƒ Π²Ρ‹ΡˆΠ΅, Ρ‡Π΅ΠΌ javascript, ΠΈ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для написания слоТных ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Π½ΠΎ ΠΏΡ€ΠΈ этом, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π½Π΅ дотягиваСт Π΄ΠΎ java/c#/typescript, ΠΈ навряд Π»ΠΈ ΠΊΠΎΠ³Π΄Π°-Π½ΠΈΠ±ΡƒΠ΄ΡŒ дотянСтся (см Β«Π€Π°Ρ‚Π°Π»ΡŒΠ½Π°Ρ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Β»). ΠŸΠΎΠ²Ρ‚ΠΎΡ€ΡŽΡΡŒ, Π½Π΅ дотянСтся ΠΈΠΌΠ΅Π½Π½ΠΎ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния систСмы Ρ‚ΠΈΠΏΠΎΠ², Π² ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… Π²Π΅Ρ‰Π°Ρ… Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ прСдпочтСния Π² Ρ‚Ρƒ ΠΈΠ»ΠΈ ΠΈΠ½ΡƒΡŽ сторону.

ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π² ΠΏΠΎ-настоящСму слоТных прилоТСниях Π½Π°Π΄ΠΎ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ всё ΠΎΠ±ΠΊΠ»Π°Π΄Ρ‹Π²Π°Ρ‚ΡŒ тСстами. Π’Π°ΠΊΠΆΠ΅, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎ phpdoc Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ слоТных callable с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ, ΠΈ IDE научатся ΠΈΡ… ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ.

Π’ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… PHP

PHP являСтся языком с динамичСской Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ пСрСмСнная, выводится Π²ΠΎ врСмя выполнСния, ΠΈ Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ряда Π΄Ρ€ΡƒΠ³ΠΈΡ… языков программирования Π² PHP Π½Π΅ трСбуСтся ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ.

PHP ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ восСмь Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…. ВсС ΠΎΠ½ΠΈ ΠΎΠ±ΡΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ Π½ΠΈΠΆΠ΅. ΠŸΠ΅Ρ€Π²Ρ‹Π΅ ΠΏΡΡ‚ΡŒ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ простыми Ρ‚ΠΈΠΏΠ°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, Π° послСдниС Ρ‚Ρ€ΠΈ β€” составными Ρ‚ΠΈΠΏΠ°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…:

Π’ΠΈΠΏ string (строка)

String (строка) β€” это ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ символов, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Β«ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΌΠΈΡ€!Β». Π‘Ρ‚Ρ€ΠΎΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΡΡ‚ΠΎΡΡ‚ΡŒ ΠΈΠ· символов Π»ΡŽΠ±Ρ‹Ρ… Π°Π»Ρ„Π°Π²ΠΈΡ‚ΠΎΠ², Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π΄Π°ΠΆΠ΅ числа. ΠŸΡ€ΠΈ объявлСнии строки Π·Π°ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Π² Π΄Π²ΠΎΠΉΠ½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ. Π‘Ρ‚Ρ€ΠΎΠΊΠΈ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Π² ΠΎΠ΄ΠΈΠ½Π°Ρ€Π½Ρ‹Ρ… ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ°Ρ…, Π½ΠΎ ΠΏΡ€ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ ΠΏΠΎ-Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ: ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π² Π΄Π²ΠΎΠΉΠ½Ρ‹Ρ… ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ°Ρ… Π·Π°ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ значСниями, Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π² ΠΎΠ΄ΠΈΠ½Π°Ρ€Π½Ρ‹Ρ… ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ°Ρ… ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡΡΠ½ΠΈΡ‚ΡŒ это, посмотритС Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π½ΠΈΠΆΠ΅:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

Π¦Π΅Π»Ρ‹Π΅ числа (Integer)

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

Π’ΠΈΠΏ double (числа с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ)

Double ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ числа, содСрТащиС Π΄Ρ€ΠΎΠ±Π½ΡƒΡŽ ΠΈΠ»ΠΈ Π΄Π΅ΡΡΡ‚ΠΈΡ‡Π½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΈ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ числа. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ минимальноС количСство дСсятичных Π·Π½Π°ΠΊΠΎΠ².

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

Π’ΠΈΠΏ boolean (логичСский Ρ‚ΠΈΠΏ)

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ логичСского Ρ‚ΠΈΠΏΠ° ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Π΄Π²Π° значСния: true ΠΈ false ΠΈΠ»ΠΈ ΠΈΠ½Π°Ρ‡Π΅ говоря истина ΠΈ лоТь. Π§Π°Ρ‰Π΅ всСго логичСскиС значСния ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² условных конструкциях:

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ NULL

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ NULL ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π½Π΅ присвоСно.

ИспользованиС NULL ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π² Ρ‚Π΅Ρ… случаях, ΠΊΠΎΠ³Π΄Π° Π½ΡƒΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ пСрСмСнная Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ значСния. НапримСр, Ссли ΠΌΡ‹ просто создадим ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Π±Π΅Π· Π΅Π΅ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, ΠΈ Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‚ΠΎ Π½Π°ΠΌ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ выдаст диагностичСскоС сообщСниС, Ρ‡Ρ‚ΠΎ пСрСмСнная Π½Π΅ установлСна.

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ, установив Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ NULL :

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

Π’ΠΈΠΏ array (ассоциативныС массивы)

Array (массив) β€” это составной Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ нСсколько Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ Ρ‚ΠΈΠΏΠ° Π΄Π°Π½Π½Ρ‹Ρ….

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

Object (ΠΎΠ±ΡŠΠ΅ΠΊΡ‚) PHP

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ β€” это Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ хранятся Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ информация ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΈΡ… ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ.

Π’ PHP ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ объявлСн явно.

ΠšΠ»Π°ΡΡΡ‹ ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ β€” это Π΄Π²Π° основных аспСкта ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ программирования.

Класс β€” это шаблон для ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ β€” это экзСмпляр класса.

ΠŸΡ€ΠΈ создании ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΎΠ½ΠΈ Π½Π°ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ всС свойства ΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ класса, Π½ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ значСния свойств.

ΠŸΡ€ΠΈ создании ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² (Volvo, BMW, Toyota ΠΈ Π΄Ρ€.) ΠΎΠ½ΠΈ Π½Π°ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ всС свойства ΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ класса, Π½ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ значСния свойств.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

Π’ΠΈΠΏ resource (рСсурсы)

РСсурс прСдставляСт ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ, которая содСрТит ссылку Π½Π° внСшний рСсурс. Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ использования внСшнСго рСсурса ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ Π±Π°Π·Π°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ…. РСсурсы ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ функциями. Π’ Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠΈΡ… ΡƒΡ€ΠΎΠΊΠ°Ρ… ΠΌΡ‹ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ рассмотрим Ρ€Π°Π±ΠΎΡ‚Ρƒ с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ Π±Π°Π·Π°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ….

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° ΠΈ нСдостатки языка программирования PHP

какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы. Π€ΠΎΡ‚ΠΎ какая систСма Ρ‚ΠΈΠΏΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² php ΠΎΠΏΠΈΡˆΠΈΡ‚Π΅ ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· пСрСчислСнных ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΈ PHP, Π½ΠΎ ΠΎΠ½ΠΈ популярны Π² своих сфСрах. А PHP явл яС тся Π»ΠΈΠ΄Π΅Ρ€ΠΎΠΌ Π² своСй нишС β€” это основной инструмСнт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ исполняСтся Π½Π° сторонС web-сСрвСра ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для придания динамичности ΠΈ интСрактивности Π²Π΅Π±-сайтам.

Π’Π°ΠΊΠΆΠ΅ PHP ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Π» ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ Π·Π° счСт популярности CMS, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΡ… этот язык:

МногиС ΡƒΠΆΠ΅ Π½Π΅ΠΎΠ΄Π½ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ ΠΏΡ€Π΅Π΄Ρ€Π΅ΠΊΠ°Π»ΠΈ Β«ΡΠΌΠ΅Ρ€Ρ‚ΡŒΒ» ΠΈ ΠΏΠ°Π΄Π΅Π½ΠΈΠ΅ популярности этому языку, Π½ΠΎ Π½Π΅ ΡΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ Π½ΠΈ Ρ‚ΠΎ, Π½ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ΅. Он ΠΊΠ°ΠΊ Π±Ρ‹Π» популярным Π² своСй нишС, Ρ‚Π°ΠΊ Ρ‚Π°ΠΌ ΠΈ остаСтся. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ программисты PHP Π΄ΠΎ сих ΠΏΠΎΡ€ вострСбованы.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚ PHP, Ссли Ρ‡Ρ‚ΠΎ, β€” это программист, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Π»Π°Π΄Π΅Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹ΠΌ языком ΠΈ Π΅Π³ΠΎ тонкостями. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚Ρ‹ PHP Π½Π° этом языкС ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ:

Ρ„ΠΎΡ€ΠΌΡ‹ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ связи ΠΈ рСгистрации Π½Π° сайтах;

динамичСскиС элСмСнты Π½Π° сайтС;

Основная Π·Π°Π΄Π°Ρ‡Π° языка PHP β€” это ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΡƒΡŽ связь ΠΌΠ΅ΠΆΠ΄Ρƒ Π²Π΅Π±-рСсурсом, сСрвСром ΠΈ Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. Он Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ примСняСтся Π² Ρ€Π°Π·ΠΌΠ΅Ρ‚ΠΊΠ΅ HTML.

ΠŸΠ»ΡŽΡΡ‹ ΠΈ минусы PHP

ΠœΠΎΡ‰Π½Ρ‹ΠΉ ΠΈ Π³ΠΈΠ±ΠΊΠΈΠΉ. Как ΠΌΡ‹ ΡƒΠΆΠ΅ писали, этот язык способСн ΠΎΠ±ΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ нСбольшой Π»ΠΈΡ‡Π½Ρ‹ΠΉ Π±Π»ΠΎΠ³, Π½ΠΎ ΠΏΡ€ΠΈ этом ΠΆΠ΅ спокойно сСбя чувствуСт Π² Π±ΠΎΠ»ΡŒΡˆΠΈΡ… рСсурсах: ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°Ρ…, со цс Стях, ΠΏΠΎΡ€Ρ‚Π°Π»Π°Ρ… ΠΈ Ρ‚. Π΄.

Π‘Π²ΠΎΠ±ΠΎΠ΄Π½Ρ‹ΠΉ. Π”Π°Π½Π½Ρ‹ΠΉ язык являСтся ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ бСсплатным ΠΈ распространяСтся со свободной Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ, поэтому Π΅Π³ΠΎ смСло ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΊΠ°ΠΊ частныС Π»ΠΈΡ†Π°, Ρ‚Π°ΠΊ ΠΈ коммСрчСскиС ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ.

ΠšΡ€ΡƒΡ‚ΠΎΠ΅ сообщСство. Он ΠΎΡ‡Π΅Π½ΡŒ распространСн ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ большоС ΠΊΠΎΠΌΡŒΡŽΠ½ΠΈΡ‚ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π»Π΅Π³ΠΊΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ с трудностями Π² освоСнии этого языка.

Π”ΠΎΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΡΡ‚ΡŒ. PHP ΠΈΠΌΠ΅Π΅Ρ‚ большоС количСство Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‚ Π΅Π³ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.

НС Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚Π΅Π»Π΅Π½. Π­Ρ‚ΠΎΡ‚ язык ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Π½Π° всСх извСстных Π²ΠΈΠ΄Π°Ρ… сСрвСров.

НСдорогой. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚ PHP β€” это Π½Π΅ Ρ€ Π΅Π΄ΠΊΠΎΡΡ‚ΡŒ, поэтому стоит Π½Π΅Π΄ΠΎΡ€ΠΎΠ³ΠΎ.

ΠŸΡ€ΠΎΡΡ‚ΠΎΡ‚Π° рСдактирования. ΠŸΠΈΡΠ°Ρ‚ΡŒ ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ этот ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ Π² любом Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ тСкста.

Π½Π° Π½Π΅ΠΌ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ дСск Ρ‚ ΠΎΠΏΠ½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ систСмный ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚;

Ρƒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° PHP Π±ΠΎΠ»Π΅Π΅ низкая Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΡΡ‚ΡŒ, Ρ‡Π΅ΠΌ с использованиСм Π΄Ρ€ΡƒΠ³ΠΈΡ… языков;

слабая Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚ Ρ‹ с Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡΠΌΠΈ;

Π­Ρ‚ΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π·Π°ΠΌΠ΅Ρ‚Π½Ρ‹Π΅ нСдостатки ΠΈ достоинства PHP. Однако Π² процСссС Ρ€Π°Π±ΠΎΡ‚Ρ‹ с этим языком ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ программисты ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‚ собствСнныС ΠΏΠ»ΡŽΡΡ‹ ΠΈ минусы PHP.

ΠœΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΎΡ‡Π΅Π½ΡŒ Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π½Ρ‹

Ссли ΠΏΠΎΠ΄ ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ²ΡˆΠ΅ΠΌΡΡ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠΌ Π’Ρ‹ Π½Π°ΠΆΠΌΡ‘Ρ‚Π΅ ΠΎΠ΄Π½Ρƒ ΠΈΠ· ΠΊΠ½ΠΎΠΏΠΎΠΊ ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… сСтСй ΠΈ ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚Π΅ΡΡŒ с Π΄Ρ€ΡƒΠ·ΡŒΡΠΌΠΈ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Leave a Reply

Your email address will not be published. Required fields are marked *