Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту

Как ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ JS- ΠΈ PHP-скрипты ΠΊ Π²Π°ΡˆΠ΅ΠΌΡƒ сайту?

БСгодня я расскаТу Π²Π°ΠΌ, ΠΊΠ°ΠΊ осущСствляСтся ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² скриптов ΠΊ Π²Π°ΡˆΠ΅ΠΌΡƒ сайту. Π­Ρ‚ΠΎ своСго Ρ€ΠΎΠ΄Π° основа основ, ΠΈ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ эту ΡΡ‚Π°Ρ‚ΡŒΡŽ я Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Π» ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΠΏΠ΅Ρ€Π²Ρ‹Ρ…. ΠŸΠΎΡ‚ΠΎΠΌΡƒ – Π½Π°Ρ‡Π½Π΅ΠΌ.

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ JS-скриптов (Ρ„Π°ΠΉΠ»Ρ‹ с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ *.js) ΠΊ сайту

JavaScript ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π½Π°ΠΌ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°Ρ… ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ сайта. Π‘ΡƒΠ΄ΡŒ Ρ‚ΠΎ стилизация Ρ„ΠΎΡ€ΠΌ ΠΈΠ»ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, какая-Π½ΠΈΠ±ΡƒΠ΄ΡŒ тСхничСская сторона вопроса.

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ JavaScript’Π° осущСствляСтся двумя способами:

1. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ – это нСпосрСдствСнно вставка ΠΊΠΎΠ΄Π° Π² ваш сайт с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ‚Π΅Π³ΠΎΠ²:

2. Π’Ρ‚ΠΎΡ€ΠΎΠΉ – с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„Π°ΠΉΠ»Π°:

Π“Π΄Π΅ Β«https://www.pandoge.com/main.jsΒ» – ΠΏΡƒΡ‚ΡŒ Π΄ΠΎ Ρ„Π°ΠΉΠ»Π° скрипта. Π’Π°ΠΊΠΎΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ рСкомСндуСтся ΠΏΠΈΡΠ°Ρ‚ΡŒ для Ρ„Π°ΠΉΠ»ΠΎΠ² Π½Π° ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΌ (внСшнСм) сСрвСрС. Если ΠΆΠ΅ Ρ„Π°ΠΉΠ» находится Π½Π° вашСм сайтС, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ просто ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ:

Π­Ρ‚ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎ, Ссли Π²Ρ‹ Π²Π΄Ρ€ΡƒΠ³ Π·Π°Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π΄ΠΎΠΌΠ΅Π½ ΠΈΠ»ΠΈ пСрСвСсти сайт Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ».

Π§Ρ‚ΠΎ касаСтся мСста ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, Ρ‚ΠΎ всС скрипты рСкомСндуСтся ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π² сСкции HEAD, ΠΏΠ΅Ρ€Π΅Π΄ Π·Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΌ Π΅Π΅ Ρ‚Π΅Π³ΠΎΠΌ. НапримСр:

Π˜Ρ… Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π² сСкции BODY. НапримСр, всС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ рСкомСндуСтся ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π² сСкции HEAD, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ всС счСтчики, слайдСры, Π³Π°Π»Π΅Ρ€Π΅ΠΈ ΠΈ ΠΏΡ€ΠΎΡ‡ΠΈΠ΅ скрипты – Π² сСкции BODY, Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠ΅Ρ€Π΅Π΄ Π·Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΌ Ρ‚Π΅Π³ΠΎΠΌ.

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ PHP-скриптов (Ρ„Π°ΠΉΠ»Ρ‹ с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ *.php) ΠΊ сайту

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ PHP-скриптов осущСствляСтся ΡƒΠΆΠ΅ трСмя способами:

1. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ – это Ρ‚Π° ΠΆΠ΅ вставка ΠΊΠΎΠ΄Π° Π² саму страницу сайта (ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Ссли Π²Ρ‹ ΠΈΠΌΠ΅Π΅Ρ‚Π΅ страницу с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ *.html – Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Π½Π° *.php) с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ‚Π΅Π³ΠΎΠ²:

2. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„Π°ΠΉΠ»Π° (Π² Ρ‚Π°ΠΊΠΎΠΌ случаС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ ΠΈ Π½Π° страницС с *.html Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ):

Но для Ρ€Π°Π±ΠΎΡ‚Ρ‹ этого способа Π² Ρ„Π°ΠΉΠ» .htaccess, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ находится Π² ΠΊΠΎΡ€Π½Π΅ вашСго сайта, Π² самый Π²Π΅Ρ€Ρ…, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ эти строки:

3. Π’Ρ€Π΅Ρ‚ΡŒΠ΅ – с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ JS-скрипта. Π’ этом случаС Π²Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½ΠΎΠ³ΠΎ PHP-скрипта Π½Π° сСрвСрС.

РСализация Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ:

Π“Π΄Π΅ Β«.resultΒ» – это класс, ΠΊΡƒΠ΄Π° Π±ΡƒΠ΄ΡƒΡ‚ Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒΡΡ Π΄Π°Π½Π½Ρ‹Π΅, Π° Β«/main.phpΒ», соотвСтствСнно, адрСс Π΄ΠΎ PHP-скрипта.

Если Π²Ρ‹ Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ Π΄Π°Π½Π½Ρ‹Π΅ с Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ сСрвСра, Ρ‚ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° PHP Π½Π° вашСм сСрвСрС Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Π°. НС Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΊ Π²Π°ΡˆΠ΅ΠΌΡƒ сайту Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ jQuery.

Π—Π΄Π΅ΡΡŒ ΠΏΡ€Π°Π²ΠΈΠ»Π° Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ Ρ‚Π΅ ΠΆΠ΅: ΠΏΠΎΠ»Π½Ρ‹ΠΉ адрСс ΠΊ Ρ„Π°ΠΉΠ»Ρƒ, Ссли ΠΎΠ½ находится Π½Π° внСшнСм сСрвСрС, ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ – Ссли Π½Π° вашСм.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅! Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ PHP-скрипт ΠΊ Π²Π°ΡˆΠ΅ΠΌΡƒ сайту, Ρ‚ΠΎ Π½Π° сСрвСрС Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° PHP. О Ρ‚ΠΎΠΌ, Π΅ΡΡ‚ΡŒ Π»ΠΈ Ρƒ вас такая Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ – ΡƒΠ·Π½Π°ΠΉΡ‚Π΅ Ρƒ своСго хостинг-ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π°.

Если Π²Ρ‹ осущСствляСтС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ скриптов ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Ρ€Π°Π· – ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ скрипты ΠΈΠ· Π°Ρ€Ρ…ΠΈΠ²Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€ΠΈΠΊΡ€Π΅ΠΏΠ»Π΅Π½ Π² ΠΊΠΎΠ½Ρ†Π΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ. Если Π² ΠΎΠ±ΠΎΠΈΡ… случаях Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ сообщСниС Β«Hello World!Β» – Π·Π½Π°Ρ‡ΠΈΡ‚, Π²Ρ‹ всС сдСлали ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ.

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

Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ html? 5 способов

Π―Π·Ρ‹ΠΊ PHP позволяСт Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½ΠΎΠ²Ρ‹ΠΌΠΈ скриптами. Π’ ΡΡ‚Π°Ρ‚ΡŒΠ΅ рассмотрим способы ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ PHP ΠΊ ΠΈΠΌΠ΅ΡŽΡ‰Π΅ΠΌΡƒΡΡ ΠΊΠΎΠ΄Ρƒ с Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ.

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ сторонних Ρ„Π°ΠΉΠ»ΠΎΠ² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€ΠΈΡ€ΡƒΡŽΡ‚ ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Ρ€Π°Π·Π±ΠΈΠ²Π°ΡŽΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π½Π° ΠΌΠΎΠ΄ΡƒΠ»ΠΈ.

Для Ρ‡Π΅Π³ΠΎ примСняСтся PHP

НаписаниС ΠΊΠΎΠ΄Π° Π² ΠΎΠ΄Π½ΠΎΠΌ скриптС Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ мСста. Π Π°Π·ΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»Π° разрастаСтся Π΄ΠΎ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, ΠΈΠ·-Π·Π° Ρ‡Π΅Π³ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ структуру становится Π½Π΅ΡƒΠ΄ΠΎΠ±Π½ΠΎ. ΠŸΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ PHP Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΡΡ‚ΡŒ софт Π½ΠΎΠ²Ρ‹ΠΌΠΈ скриптами ΠΈΠ· Π²Π½Π΅ΡˆΠ½ΠΈΡ… источников. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ находится Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅, Π³Π΄Π΅ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.

Как происходит процСсс ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ

Если Π² сцСнарии прСдусмотрСно Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ PHP элСмСнта, Π΅Π³ΠΎ ΠΎΠ±ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°ΡŽΡ‚ Π² ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹Π΅ Ρ‚Π΅Π³ΠΈ, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ Π½Π°Ρ‡Π°Π»ΠΎ ΠΈ ΠΊΠΎΠ½Π΅Ρ†. Π’ ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠΌ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ΅ происходит HTML считываниС.

Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. Π€ΠΎΡ‚ΠΎ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту

ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ PHP

ΠŸΡ€ΠΈ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Π΅ языковыС конструкции, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π» частСй. Π”Π°Π»Π΅Π΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΏΡ€ΠΎ 5 основных способов, ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‰ΠΈΡ…ΡΡ условиями примСнСния.

Π’Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ include

Команда include ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ваТности. Если присоСдинСниС куска ΠΊΠΎΠ΄Π° Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ с ошибкой, Π½Π° экранС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° появится надпись Warning. Если программист Ρ€Π΅ΡˆΠΈΡ‚ ΠΏΡ€ΠΎΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ, Ρ€Π°Π±ΠΎΡ‚Π° скрипта Π½Π΅ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡΡ.

Алгоритм Ρ‡Π΅Ρ€Π΅Π· require

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ваТности. Π Π°Π±ΠΎΡ‚Π° куска ΠΊΠΎΠ΄Π° влияСт Π½Π° дальнСйшСС Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ скрипта. Если ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»Π° ошибка ΠΏΡ€ΠΈ Ρ‡Ρ‚Π΅Π½ΠΈΠΈ, Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‚ΠΈΡ‚ дСйствиС. ΠŸΡ€ΠΈ Π½Π΅ΡƒΠ΄Π°Ρ‡Π½ΠΎΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ require, Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ скрипта Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡΡ Π²Ρ‹Π΄Π°Ρ‡Π΅ΠΉ ошибки. НапримСр, Π²Π΅Π±-страница ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‚ΠΈΡ‚ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒΡΡ.

Алгоритм Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ‡Π΅Ρ€Π΅Π· include_once

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ схоТ с ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ include. Однако суффикс _once ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° Π΅Π΄ΠΈΠ½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ куска ΠΊΠΎΠ΄Π°. Если ΡƒΠ±Ρ€Π°Ρ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅, Ρ„Π°ΠΉΠ» смоТСт ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΈ Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ Ρ€Π°Π·. ИспользованиС include_once экономит мСсто ΠΏΡ€ΠΈ написании ΠΊΠΎΠ΄Π°, структурируСт ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ.

Π’Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ require_once

Π Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ require состоит Π² количСствС ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½Ρ‹Ρ… Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠΉ. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Π² скриптС большой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ находится мноТСство Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒΡΡ Ρ€Π°Π·Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹. Если ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π±Π΅Π· суффикса _once, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· ΠΏΡ€ΠΈ Ρ‡Ρ‚Π΅Π½ΠΈΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ слоТная Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ°. ΠŸΡ€ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° require_once, Π΄Ρ€Π΅Π²ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΏΠΎΠΌΠ΅Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ элСмСнт ΡƒΠΆΠ΅ примСнялся. Π”Π°Π»ΡŒΡˆΠ΅ ΠΎΠ½ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ.

АвтоматичСскоС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Иногда конструкции послС внСдрСния Ρ„Π°ΠΉΠ»ΠΎΠ² выглядят большими ΠΈ Π³Ρ€ΠΎΠΌΠΎΠ·Π΄ΠΊΠΈΠΌΠΈ. Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ Π² ΠΊΠΎΠ΄Π΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ автоматичСскоС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅Π΅ со всСми ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ. Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ примСняСтся функция _autoload. Данная функция являСтся Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠΉ – Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ опрСдСляСт класс ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ. ЕдинствСнноС ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ – ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ класс Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ создан Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°.

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с Π°Π²Ρ‚ΠΎΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΌ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° функция _autoload имССтся Π² ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΠΎΠΌ элСмСнтС. Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π»ΠΎ ошибок, создаСтся функция, которая ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° ΠΎΡ†Π΅Π½ΠΊΡƒ количСства классов Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠΎΠ² – spl_autoload_register.

Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. Π€ΠΎΡ‚ΠΎ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту

Какой способ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»Π΅Π½

ПослС рассмотрСния 5 ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² внСдрСния, ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ€Π°Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄. Для Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ чтСния Π±ΠΎΠ»ΡŒΡˆΠΈΡ… кусков ΠΊΠΎΠ΄Π° ΠΈΠ· сторонних источников, примСняСтся ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ require ΠΈΠ»ΠΈ include с суффиксом _once.

Π Π°Π±ΠΎΡ‚Π° ΠΊΠΎΠ΄Π° Π±Π΅Π· суффикса _once постоянно пСрСраспрСдСляСт ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅. Π”Π°Π½Π½Ρ‹ΠΉ процСсс ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ возникновСнию систСматичСских ошибок. Π’Π°ΠΊΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ Π΄Π΅Ρ„Π΅ΠΊΡ‚Ρ‹ ΠΏΡ€ΠΈ Ρ‡Ρ‚Π΅Π½ΠΈΠΈ ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ находятся Π² Ρ„Π°ΠΉΠ»Π΅, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΌ нСсколько Ρ€Π°Π·. ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π΅Π½Π½ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ include_once ΠΈ require_once. Π’Ρ‹Π±ΠΎΡ€ элСмСнта Π΄ΠΎΠ»ΠΆΠ΅Π½ Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ ваТности элСмСнта ΠΊΠΎΠ΄Π°. ИспользованиС суффикса позволяСт ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ чтСния Π±Π΅Π· ошибок, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½Ρ‹Ρ… ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡΡ….

Как ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ΡŒ написаниС ΠΊΠΎΠ΄Π°

Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. Π€ΠΎΡ‚ΠΎ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ PHP Ρ„Π°ΠΉΠ»ΠΎΠ² позволяСт Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π» ΠΊΠΎΠ΄Π°, ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈ ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ΡŒ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ². БущСствуСт 5 основных способов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ позволят Π²Π½Π΅Π΄Ρ€ΠΈΡ‚ΡŒ Ρ‡Π°ΡΡ‚ΡŒ скрипта ΠΈΠ· стороннСго источника. НаиболСС Ρ€Π°Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ считаСтся Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° с суффиксом _once. Π‘ Π΅Π³ΠΎ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ ошибки ΠΏΡ€ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠΌ считывании ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°.

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

PHP для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ²

Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. Π€ΠΎΡ‚ΠΎ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту

Π’ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠΈ сСрии Β«PHP для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…Β», сСгодняшняя ΡΡ‚Π°Ρ‚ΡŒΡ Π±ΡƒΠ΄Π΅Ρ‚ посвящСна Ρ‚ΠΎΠΌΡƒ, ΠΊΠ°ΠΊ PHP ΠΈΡ‰Π΅Ρ‚ ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Ρ„Π°ΠΉΠ»Ρ‹.

Для Ρ‡Π΅Π³ΠΎ ΠΈ ΠΏΠΎΡ‡Π΅ΠΌΡƒ

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

Если Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ скрипт index.php, Ρ‚ΠΎ PHP всё это Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ:

Когда Ρ„Π°ΠΉΠ» ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ, Ρ‚ΠΎ Π΅Π³ΠΎ ΠΊΠΎΠ΄ оказываСтся Π² Ρ‚ΠΎΠΉ ΠΆΠ΅ области видимости, Ρ‡Ρ‚ΠΎ ΠΈ строка Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π΅Π³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΠΈ, Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ всС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, доступныС Π² Π΄Π°Π½Π½ΠΎΠΉ строкС Π±ΡƒΠ΄ΡƒΡ‚ доступны ΠΈ Π² ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅. Если Π² ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅ Π±Ρ‹Π»ΠΈ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Ρ‹ классы ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΏΠΎΠΏΠ°Π΄Π°ΡŽΡ‚ Π² Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ видимости (Ссли ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ для Π½ΠΈΡ… Π½Π΅ Π±Ρ‹Π» ΡƒΠΊΠ°Π·Π°Π½ namespace).

Если Π²Ρ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚Π΅ Ρ„Π°ΠΉΠ» Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΡ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ доступ ΠΊ области видимости Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄ Ρ‚ΠΎΠΆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ:

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ„Π°ΠΉΠ»ΠΎΠ² являСтся Ρ‚ΠΎΡ‚ ΠΌΠΎΠΌΠ΅Π½Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ Ρ„Π°ΠΉΠ»Π° парсинг ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ€Π΅ΠΆΠΈΠΌ HTML, ΠΏΠΎ этой ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ любой ΠΊΠΎΠ΄ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ Π² PHP Ρ‚Π΅Π³ΠΈ:

Если Ρƒ вас Π² Ρ„Π°ΠΉΠ»Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ PHP ΠΊΠΎΠ΄, Ρ‚ΠΎ Π·Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Ρ‚Π΅Π³ принято ΠΎΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ, Π΄Π°Π±Ρ‹ случайно Π½Π΅ Π·Π°Π±Ρ‹Ρ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Π½ΠΈΡ‚ΡŒ символы послС Π·Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎ Ρ‚Π΅Π³Π°, Ρ‡Ρ‚ΠΎ Ρ‡Ρ€Π΅Π²Π°Ρ‚ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ (ΠΎΠ± этом я Π΅Ρ‰Ρ‘ расскаТу Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅).

А Π²Ρ‹ Π²ΠΈΠ΄Π΅Π»ΠΈ сайт-Ρ„Π°ΠΉΠ» Π½Π° 10 000 строк? АТ слёзы Π½Π° Π³Π»Π°Π·Π°Ρ… (β•₯_β•₯)…

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ„Π°ΠΉΠ»ΠΎΠ²

Как ΡƒΠΆΠ΅ Π±Ρ‹Π»ΠΎ сказано Π²Ρ‹ΡˆΠ΅, Π² PHP сущСствуСт нСсколько Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ„Π°ΠΉΠ»ΠΎΠ²:

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

И Π±ΡƒΠ΄Π΅ΠΌ Π΅Π³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ нСсколько Ρ€Π°Π·:

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ выполнСния Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π²Π° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ„Π°ΠΉΠ»Π° echo.php:

БущСствуСт Π΅Ρ‰Ρ‘ ΠΏΠ°Ρ€ΠΎΡ‡ΠΊΠ° Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π»ΠΈΡΡŽΡ‚ Π½Π° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, Π½ΠΎ ΠΎΠ½ΠΈ Π²Π°ΠΌ Π½Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ β€” auto_prepend_file ΠΈ auto_append_file. Π­Ρ‚ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π΄ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ всСх Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ послС выполнСния всСх скриптов соотвСтствСнно. Π― Π΄Π°ΠΆΠ΅ Π½Π΅ ΠΌΠΎΠ³Ρƒ ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ Β«ΠΆΠΈΠ²ΠΎΠΉΒ» сцСнарий, ΠΊΠΎΠ³Π΄Π° это ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ.

Π“Π΄Π΅ ΠΈΡ‰Π΅Ρ‚?

Если ΠΏΡ€ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ Ρ„Π°ΠΉΠ»Π° Π²Ρ‹ прописываСтС Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ (Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠΉΡΡ с «/») ΠΈΠ»ΠΈ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ (Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠΉΡΡ с «.» ΠΈΠ»ΠΈ «..»), Ρ‚ΠΎ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° include_path Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½Π°, Π° поиск Π±ΡƒΠ΄Π΅Ρ‚ осущСствлён Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡƒ ΠΏΡƒΡ‚ΠΈ.

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ стоило Π±Ρ‹ Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΎ safe_mode, Π½ΠΎ это ΡƒΠΆΠ΅ Π΄Π°Π²Π½ΠΎ история (с вСрсии 5.4), ΠΈ я надСюсь Π²Ρ‹ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°Ρ‚ΡŒΡΡ с Π½ΠΈΠΌ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚Π΅, Π½ΠΎ Ссли Π²Π΄Ρ€ΡƒΠ³, Ρ‚ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π½Π°Π»ΠΈ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π±Ρ‹Π»ΠΎ, Π½ΠΎ ΠΏΡ€ΠΎΡˆΠ»ΠΎ.

ИспользованиС return

Π—Π°Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ„Π°ΠΊΡ‚Ρ‹, Π±Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Тилось ΠΈ Ρ‚Π°ΠΊ Ρ…ΠΎΡ€ΠΎΡˆΠΎ: Ссли Π²ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹ Π² основном Ρ„Π°ΠΉΠ»Π΅ Π²Π½Π΅ зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Π±Ρ‹Π»ΠΈ Π»ΠΈ ΠΎΠ½ΠΈ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Ρ‹ Π΄ΠΎ return ΠΈΠ»ΠΈ послС

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ±ΠΈΡ€Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡŽ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΏΠ°ΠΏΠΎΠΊ ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ². Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° Ρ„Π°ΠΉΠ»ΠΎΠ² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ:

ΠŸΡ€ΠΈ этом ΠΊΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

АвтоматичСскоС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΠΈ с ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠ² выглядят ΠΎΡ‡Π΅Π½ΡŒ Π³Ρ€ΠΎΠΌΠΎΠ·Π΄ΠΊΠΎ, Ρ‚Π°ΠΊ ΠΈ Π΅Ρ‰Ρ‘ ΠΈ ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ Π·Π° ΠΈΡ… ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ β€” Π΅Ρ‰Ρ‘ Ρ‚ΠΎΡ‚ ΠΏΠΎΠ΄Π°Ρ€ΠΎΡ‡Π΅ΠΊ, Π·Π°Ρ†Π΅Π½ΠΈΡ‚Π΅ кусочСк ΠΊΠΎΠ΄Π° ΠΈΠ· ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΡΡ‚Π°Ρ‚ΡŒΠΈ ΠΏΡ€ΠΎ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ:

ΠŸΠ΅Ρ€Π²ΠΎΠΉ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠΎΠΉ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ Β«ΡΡ‡Π°ΡΡ‚ΡŒΡΒ» Π±Ρ‹Π»ΠΎ появлСниС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ __autoload. Π‘ΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‚ΠΎΡ‡Π½Π΅Π΅, это Π±Ρ‹Π»Π° Π΄Π°ΠΆΠ΅ Π½Π΅ опрСдСлСнная функция, эту Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Π»ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ сами, ΠΈ ΡƒΠΆΠ΅ с Π΅Ρ‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½ΡƒΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ Π½Π°ΠΌ Ρ„Π°ΠΉΠ»Ρ‹ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ класса. ЕдинствСнным ΠΏΡ€Π°Π²ΠΈΠ»ΠΎΠΌ ΡΡ‡ΠΈΡ‚Π°Π»ΠΎΡΡŒ, Ρ‡Ρ‚ΠΎ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ класса Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ создан ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ класса (Ρ‚.Π΅. myClass Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ„Π°ΠΉΠ»Π° myClass.php). Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ‚Π°ΠΊΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ __autoload() (взят ΠΈΠ· ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² ΠΊ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ руководству):

Класс ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅ΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ:

Π€Π°ΠΉΠ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹ΠΉ класс:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°Ρ… с Π΄Π°Π½Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ β€” ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅ ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚Π΅ сторонний ΠΊΠΎΠ΄, Π° Ρ‚Π°ΠΌ ΡƒΠΆΠ΅ ΠΊΡ‚ΠΎ-Ρ‚ΠΎ прописал Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ __autoload() для своСго ΠΊΠΎΠ΄Π°, ΠΈ вуаля:

Ну Π±ΠΎΠ»Π΅Π΅-ΠΌΠ΅Π½Π΅Π΅ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Π° ΠΏΡ€ΠΎΡΡΠ½ΠΈΠ»Π°ΡΡŒ, хотя ΠΏΠΎΠ³ΠΎΠ΄ΠΈΡ‚Π΅, всС зарСгистрированныС Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠΈ становятся Π² ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ ΠΈΡ… рСгистрации, соотвСтствСнно, Ссли ΠΊΡ‚ΠΎ-Ρ‚ΠΎ Π½Π°Ρ…ΠΈΠΌΠΈΡ‡ΠΈΠ» Π² своё Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ΅, Ρ‚ΠΎ вмСсто ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠ³ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° ΠΌΠΎΠΆΠ΅Ρ‚ получится ΠΎΡ‡Π΅Π½ΡŒ нСприятный Π±Π°Π³. Π§Ρ‚ΠΎΠ±Ρ‹ Ρ‚Π°ΠΊΠΎΠ³ΠΎ Π½Π΅ Π±Ρ‹Π»ΠΎ, взрослыС ΡƒΠΌΠ½Ρ‹Π΅ дядьки описали стандарт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ сторонниС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π±Π΅Π· ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, Π³Π»Π°Π²Π½ΠΎΠ΅ Ρ‡Ρ‚ΠΎΠ±Ρ‹ организация классов Π² Π½ΠΈΡ… соотвСтствовала стандарту PSR-0 (устарСл ΡƒΠΆΠ΅ Π»Π΅Ρ‚ 10 ΠΊΠ°ΠΊ) ΠΈΠ»ΠΈ PSR-4. Π’ Ρ‡Ρ‘ΠΌ ΡΡƒΡ‚ΡŒ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ описанных Π² стандартах:

ПолноС имя ΠΊΠ»Π°ΡΡΠ°ΠŸΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚Π²ΠΎ имёнБазовая Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡΠŸΠΎΠ»Π½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ
\Acme\Log\Writer\File_WriterAcme\Log\Writer./acme-log-writer/lib/./acme-log-writer/lib/File_Writer.php
\Aura\Web\Response\StatusAura\Web/path/to/aura-web/src//path/to/aura-web/src/Response/Status.php
\Symfony\Core\RequestSymfony\Core./vendor/Symfony/Core/./vendor/Symfony/Core/Request.php
\Zend\AclZend/usr/includes/Zend//usr/includes/Zend/Acl.php

Различия этих Π΄Π²ΡƒΡ… стандартов, лишь Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ PSR-0 ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ старый ΠΊΠΎΠ΄ Π±Π΅Π· пространства ΠΈΠΌΡ‘Π½ (Ρ‚.Π΅. Π΄ΠΎ вСрсии 5.3.0), Π° PSR-4 ΠΈΠ·Π±Π°Π²Π»Π΅Π½ ΠΎΡ‚ этого Π°Π½Π°Ρ…Ρ€ΠΎΠ½ΠΈΠ·ΠΌΠ°, Π΄Π° Π΅Ρ‰Ρ‘ ΠΈ позволяСт ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ Π½Π΅Π½ΡƒΠΆΠ½ΠΎΠΉ влоТСнности ΠΏΠ°ΠΏΠΎΠΊ.

Благодаря этим стандартам, стало Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ появлСниС Ρ‚Π°ΠΊΠΎΠ³ΠΎ инструмСнта ΠΊΠ°ΠΊ composer β€” ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² для PHP. Если ΠΊΡ‚ΠΎ пропустил, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ Π΄ΠΎΠΊΠ»Π°Π΄ ΠΎΡ‚ pronskiy ΠΏΡ€ΠΎ Π΄Π°Π½Π½Ρ‹ΠΉ инструмСнт.

PHP-ΠΈΠ½ΡŠΠ΅ΠΊΡ†ΠΈΡ

Π•Ρ‰Ρ‘ Ρ…ΠΎΡ‚Π΅Π» Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠΉ ошибки всСх, ΠΊΡ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Π΅Π΄ΠΈΠ½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ Π²Ρ…ΠΎΠ΄Π° для сайта Π² ΠΎΠ΄Π½ΠΎΠΌ index.php ΠΈ Π½Π°Π·Ρ‹Π²Π°Π΅Ρ‚ это MVC-Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠΌ:

Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡˆΡŒ Π½Π° ΠΊΠΎΠ΄, ΠΈ Ρ‚Π°ΠΊ ΠΈ хочСтся Ρ‡Π΅Π³ΠΎ-Π½ΠΈΡ‚ΡŒ врСдоносного Ρ‚ΡƒΠ΄Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ:

Вторая «стоящая» ΠΌΡ‹ΡΠ»ΡŒ, это ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Π½Π°Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ:

Π’Ρ€Π΅Ρ‚ΡŒΡ, Π½ΠΎ Π½Π΅ послСдняя модификация ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ, это использованиС Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ open_basedir, с Π΅Ρ‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ, Π³Π΄Π΅ ΠΈΠΌΠ΅Π½Π½ΠΎ PHP Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΊΠ°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ:

Π‘ΡƒΠ΄ΡŒΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹, данная Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° влияСт Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ², Π½ΠΎ ΠΈ Π½Π° всю Ρ€Π°Π±ΠΎΡ‚Ρƒ с Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмой, Ρ‚.Π΅. Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π΄Π°Π½Π½ΠΎΠ΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹, Ρ‡Ρ‚ΠΎ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π·Π°Π±Ρ‹Π»ΠΈ Π²Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ, Π½ΠΈ ΠΊΠ΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, Π½ΠΈ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹ (хотя Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ is_uploaded_file() ΠΈ move_uploaded_file() ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΠ°ΠΏΠΊΠΎΠΉ для Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ²).

КакиС Π΅Ρ‰Ρ‘ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ? Π£ΠΉΠΌΠ° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ², всё зависит ΠΎΡ‚ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ вашСго прилоТСния.

Π₯ΠΎΡ‚Π΅Π» Π΅Ρ‰Ρ‘ Π²ΡΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΎ сущСствовании «чудСсной» Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ allow_url_include (Ρƒ Π½Π΅Ρ‘ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΡŒ ΠΎΡ‚ allow_url_fopen), ΠΎΠ½Π° позволяСт ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ PHP Ρ„Π°ΠΉΠ»Ρ‹, Ρ‡Ρ‚ΠΎ ΠΊΡƒΠ΄Π° ΠΊΠ°ΠΊ опаснСй для вашСго сСрвСра:

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

Π’ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Данная ΡΡ‚Π°Ρ‚ΡŒΡ β€” основа-основ Π² PHP, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΈΠ·ΡƒΡ‡Π°ΠΉΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, выполняйтС задания ΠΈ Π½Π΅ Ρ„ΠΈΠ»ΠΎΠ½ΡŒΡ‚Π΅, Π·Π° вас Π½ΠΈΠΊΡ‚ΠΎ ΡƒΡ‡ΠΈΡ‚ΡŒ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚.

Π­Ρ‚ΠΎ рСпост ΠΈΠ· сСрии статСй Β«PHP для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…Β»:

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

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΈΜ†Π»ΠΎΠ² Π² PHP

Π’ PHP Π΅ΡΡ‚ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π²Ρ‹Π·ΠΎΠ²Π° ΠΎΠ΄Π½ΠΎΠ³ΠΎ сцСнария ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ конструкции языка ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ сцСнарий ΠΈΠ· ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° ΠΏΠΎ Π΅Π³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ, Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Вакая ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ называСтся ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠ². ΠŸΡ€ΠΈΡ‡Ρ‘ΠΌ Ρ‚Π°ΠΊΠΎΠ²Ρ‹ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ²Π»ΡΡ‚ΡŒΡΡ ΠΊΠ°ΠΊ php-сцСнарий, Ρ‚Π°ΠΊ ΠΈ любой Π΄Ρ€ΡƒΠ³ΠΎΠΉ тСкстовый Ρ„Π°ΠΉΠ». НапримСр, HTML-страница.

Π—Π°Ρ‡Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»ΡΡ‚ΡŒ ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ php-сцСнарии

PHP-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ дробят вСсь исходный ΠΊΠΎΠ΄ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π° ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ сцСнарии, Ρ‡Ρ‚ΠΎΠ±Ρ‹ с Π½ΠΈΠΌΠΈ ΠΏΡ€ΠΎΡ‰Π΅ Π±Ρ‹Π»ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. Если Π±Ρ‹ ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ ΠΏΠΈΡΠ°Ρ‚ΡŒ вСсь ΠΊΠΎΠ΄ Π² ΠΎΠ΄Π½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅, Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠΉ сцСнарий стал Π±Ρ‹ просто Π½Π΅ΠΎΠ±ΡŠΡΡ‚Π½Ρ‹ΠΌ ΠΈ ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ‚Π°ΠΌ стало Ρ€Π΅ΡˆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° Π½Π° Ρ€Π°Π·Π½Ρ‹Π΅ сцСнарии β€” это СстСствСнный способ Π±ΠΎΡ€ΠΎΡ‚ΡŒΡΡ со ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ.
Π•ΡΡ‚ΡŒ ΠΈ Π΅Ρ‰Ρ‘ ΠΎΠ΄ΠΈΠ½ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ эффСкт ΠΎΡ‚ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ дСлСния. Если вынСсти ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰ΠΈΠ΅ΡΡ Π±Π»ΠΎΠΊΠΈ ΠΊΠΎΠ΄Π° Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ сцСнарии, Ρ‚ΠΎ появится Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠ΄ Π² Ρ€Π°Π·Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π°Ρ… ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π΅Π³ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΡŽ. Π₯ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ β€” это ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. ΠžΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΎΠ±ΡŠΡΠ²Π»ΡΡ‚ΡŒ ΠΈΡ… Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ сцСнарии, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Ρ‚Π°ΠΌ, Π³Π΄Π΅ эти Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ понадобятся.

Бпособы ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ„Π°ΠΉΠ»ΠΎΠ²

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ„Π°ΠΉΠ»ΠΎΠ²

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΠΎΠ΅ Ρ„Π°ΠΉΠ»Π° sub.php :

Π’ Ρ„Π°ΠΉΠ»Π΅ index.php находится ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ сцСнарий sub.php :

Π˜Π½Ρ‚Π΅Ρ€Π΅ΡΠ½Ρ‹ΠΉ Ρ„Π°ΠΊΡ‚: require ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово, Π»ΠΈΠ±ΠΎ ΠΊΠ°ΠΊ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ.
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ΄Π½ΠΈΠΌ ΠΈ Ρ‚Π΅ΠΌ ΠΆΠ΅:

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹:

ΠΠ±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹Π΅ ΠΈ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡƒΡ‚ΠΈ

ΠŸΡ€ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ Ρ„Π°ΠΉΠ»Π° Π² качСствС Π΅Π³ΠΎ адрСса ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹ΠΉ ΠΈΠ»ΠΈ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ.

ΠΠ±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя ΠΏΠΎΠ»Π½Ρ‹ΠΉ адрСс Ρ„Π°ΠΉΠ»Π° ΠΎΡ‚ корня диска.
ΠŸΡ€ΠΈΠΌΠ΅Ρ€: /var/www/web/site/inc/sub.php

ΠŸΠΎΠ»Π΅Π·Π½Ρ‹Π΅ константы

Π’ PHP Π΅ΡΡ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ встроСнныС константы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ пригодятся для использования Π² ΠΏΡƒΡ‚ΠΈ ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΡ‹ΠΌ Ρ„Π°ΠΉΠ»Π°.

__DIR__ β€” ΠŸΠΎΠ»Π½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ ΠΊ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ находится Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ сцСнарий
__FILE__ β€” ΠŸΠΎΠ»Π½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ ΠΊ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌΡƒ ΡΡ†Π΅Π½Π°Ρ€ΠΈΡŽ

Π’ΠΈΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΡ‹Ρ… сцСнариях

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

4 способа, ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ PHP-Ρ„Π°ΠΉΠ» ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅

Π˜Π·ΡƒΡ‡Π°Π΅ΠΌ PHP со Skillbox. БСгодня расскаТСм, ΠΊΠ°ΠΊ Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π²Π½Π΅ΡˆΠ½ΠΈΡ… скриптов ΠΈ ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² Π»ΡƒΡ‡ΡˆΠ΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ.

Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. Π€ΠΎΡ‚ΠΎ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту

Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. Π€ΠΎΡ‚ΠΎ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту

Для Ρ‡Π΅Π³ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹

Π’Π½Π°Ρ‡Π°Π»Π΅ разбСрСмся, Π·Π°Ρ‡Π΅ΠΌ это Π½Π°Π΄ΠΎ. ΠŸΠΈΡΠ°Ρ‚ΡŒ вСсь ΠΊΠΎΠ΄ Π² ΠΎΠ΄Π½ΠΎΠΌ скриптС Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π½Π΅ΠΏΡ€Π°ΠΊΡ‚ΠΈΡ‡Π½ΠΎ ΠΈ попросту странно: ΠΎΠ½ разрастСтся Π΄ΠΎ гигантских Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² ΠΈ станСт Π½Π΅ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΌ. ΠŸΡ€ΠΈΠ΄Π΅Ρ‚ΡΡ Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° Π΅Π³ΠΎ Π΄ΠΎΡ€Π°Π±ΠΎΡ‚ΠΊΡƒ ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅.

PHP Π΄Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½ΠΎΠ²Ρ‹ΠΌΠΈ скриптами, фактичСски внСшними кусками ΠΊΠΎΠ΄Π°. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Ρ€Π°Π·Π»ΠΎΠΆΠΈΡ‚ΡŒ всС ΠΌΠΎΠ΄ΡƒΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² Ρ€Π°Π·Π½Ρ‹Π΅ ΠΏΠ°ΠΏΠΊΠΈ, ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΠΎ нСобходимости.

КакиС Ρ„Π°ΠΉΠ»Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ

ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΊΠΎΠ΄ Π²Π½ΡƒΡ‚Ρ€ΠΈ сцСнария, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ PHP, ΠΌΡ‹ ΠΎΠ±ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Π΅ΠΌ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹ΠΌΠΈ Ρ‚Π΅Π³Π°ΠΌΠΈ Π½Π°Ρ‡Π°Π»Π° ΠΈ ΠΊΠΎΠ½Ρ†Π° PHP-ΠΊΠΎΠ΄Π°.

4 способа, ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ PHP-Ρ„Π°ΠΉΠ»

ΠŸΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Ρ‡Π΅Ρ‚Ρ‹Ρ€ΡŒΠΌΡ способами:

ВсС это β€” особыС языковыС конструкции PHP для Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Π΅Π³ΠΎ частСй. РасскаТСм ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ: ΠΊΠ°ΠΊΠΎΠ²Π° Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ ΠΈ Π² ΠΊΠ°ΠΊΠΈΡ… условиях ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ.

Π˜Π½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ include

Если Ρ„Π°ΠΉΠ», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ присоСдинили с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ этой конструкции, ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΉ-Π»ΠΈΠ±ΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ Π½Π΅ смоТСт ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ, ΠΌΡ‹ просто ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ β€” Warning. Если Π΅Π³ΠΎ ΠΏΡ€ΠΎΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ скрипта Π² этом Ρ„Π°ΠΉΠ»Π΅ Π½Π΅ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡΡ.

Команда include ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ„Π°ΠΉΠ»ΠΎΠ², Π²Π°ΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½Π΅ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½Π°. ΠœΡ‹ запишСм Π² ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ, Ρ‡Ρ‚ΠΎ ΠΎΠ΄ΠΈΠ½ Π½Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΡΡ β€” Β«ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅Β». Но Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ продолТится Π±Π΅Π· Π½Π΅Π³ΠΎ.

ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρƒ нас Π΅ΡΡ‚ΡŒ Ρ„Π°ΠΉΠ» Variable.php, Π° Π² Π½Π΅ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄:

ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ Π΅Π³ΠΎ Π² Ρ„Π°ΠΉΠ»Π΅ index.php:

Π’Π°ΠΊΠΎΠΉ ΠΊΠΎΠ΄ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

ΠŸΡ€ΠΈ ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ

Π’Π°ΠΊΠΎΠΉ ΠΊΠΎΠ΄ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

Π˜Π½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ require

Если ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ require ΠΈ Ρ„Π°ΠΉΠ» ΠΏΡ€ΠΈ этом Π½Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡΡ, Ρ‚ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ скрипта Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡΡ Ρ„Π°Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ ошибкой. НапримСр, приостановится Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ° страницы сайта.

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° примСняСтся для Ρ‚Π΅Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎ. Π‘Π΅Π· Π½ΠΈΡ… Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π°, поэтому ΠΎΠ½Π° остановится.

ΠŸΡ€ΠΎΡ†Π΅ΡΡ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π΅Π½ инструкции include. ΠŸΡ€ΠΈ ΠΎΡˆΠΈΠ±ΠΎΡ‡Π½ΠΎΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ ΠΊΠΎΠ΄ выглядит Ρ‚Π°ΠΊ:

Он ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‚ΠΈΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π½Π° ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ Ρ†ΠΈΠΊΠ»Π° послС ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ„Π°ΠΉΠ»Π°.

Π˜Π½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ include_once

ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ include с Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ _once ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ этот Ρ„Π°ΠΉΠ» ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΅Π΄ΠΈΠ½ΠΎΠΆΠ΄Ρ‹. ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ Π±Π΅Π· суффикса _once Π·Π°ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ Ρ„Π°ΠΉΠ» ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ Ρ€Π°Π·, Π²Ρ‚ΠΎΡ€ΠΎΠΉ, Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ. Если объявляСм Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρƒ include_once, Ρ‚ΠΎ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·. Π­Ρ‚ΠΎ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ экономит мСсто.

Π’Π°ΠΊΠΎΠΉ ΠΊΠΎΠ΄ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

Π˜Π½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ require_once

ΠžΡ‚Π»ΠΈΡ‡Π°Π΅Ρ‚ΡΡ ΠΎΡ‚ require Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ΠΌ ΠΊ количСству ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ скрипта. Π’ ΠΊΠΎΠ΄Π΅ большой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ ΠΌΠ½ΠΎΠ³ΠΎ Ρ†Π΅ΠΏΠΎΡ‡Π½Ρ‹Ρ… ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ, Π° Π²Π½ΡƒΡ‚Ρ€ΠΈ Π½ΠΈΡ… ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒΡΡ Π΅Ρ‰Π΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹. Если ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ include ΠΈΠ»ΠΈ require, Ρ‚ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· Π±ΡƒΠ΄Π΅Ρ‚ постоянно ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ вся эта слоТная Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ°.

Благодаря Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π΅ _once Ρ„Π°ΠΉΠ» хранится с ΠΏΠΎΠΌΠ΅Ρ‚ΠΊΠΎΠΉ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ ΡƒΠΆΠ΅ примСнялся. ΠœΡ‹ Π΅Π³ΠΎ большС Π½Π΅ Ρ‚Ρ€ΠΎΠ³Π°Π΅ΠΌ ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ.

Π›ΡŽΠ±ΠΎΠΉ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚Ρƒ ΠΆΠ΅ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ видимости, Ρ‡Ρ‚ΠΎ ΠΈ строка, Π³Π΄Π΅ ΠΌΡ‹ ΡƒΠΊΠ°Π·Π°Π»ΠΈ ΠΎΠ΄Π½Ρƒ ΠΈΠ· Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ². Если ΠΌΡ‹ объявили Π΅Π΅ посСрСдинС Ρ„Π°ΠΉΠ»Π°, Ρ‚ΠΎ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ видимости Π±ΡƒΠ΄Π΅Ρ‚ глобальной. Если Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ β€” локальной.

Какой способ Π»ΡƒΡ‡ΡˆΠ΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ

ΠœΡ‹ рассмотрСли всС Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°, ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ PHP-Ρ„Π°ΠΉΠ» с Ρ†Π΅Π»ΡŒΡŽ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. ΠžΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ срСди Π½ΠΈΡ… β€” конструкции с суффиксом _once.

Π‘Π΅Π· _once происходит постоянноС ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. Оно ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ алгоритмичСским ошибкам. Π•Ρ‰Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π° ошибка ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, которая находится Π² Π΄Π²Π°ΠΆΠ΄Ρ‹ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ наш Π²Ρ‹Π±ΠΎΡ€ β€” include_once ΠΈ require_once Π² зависимости ΠΎΡ‚ ваТности Ρ„Π°ΠΉΠ»ΠΎΠ² для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π˜Π½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΠΈ с суффиксами ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‚ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ошибок, связанных с ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½Ρ‹ΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ.

Π›Π°ΠΉΡ„Ρ…Π°ΠΊ ΠΎΡ‚ пСрфСкциониста

Если Π²Ρ‹ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠΉ PHP-программист, Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ ΠΏΡ€ΠΎΠΉΡ‚ΠΈ курс Β«PHP-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΒ». Π’Ρ‹ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚Π΅ Π΅Π³ΠΎ ΠΎΡ‚ Π°Π·ΠΎΠ² Π΄ΠΎ нюансов ΠΈ станСтС настоящим Π³ΡƒΡ€Ρƒ Π² профСссии.

Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту. Π€ΠΎΡ‚ΠΎ Как ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ php ΠΊ сайту

Автор Π² сфСрС IT, digital, экономики ΠΈ финансов. Π’Π΅Π΄Π΅Ρ‚ нСкоммСрчСский ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… писатСлСй Β«Π›ΠΈΡ‚Π¦Π΅Ρ…Β».

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

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *