La funkcioj inkluzivi kaj postuli en PHP estas uzataj por inkludi kaj ekzekuti eksterajn dosierojn ene de PHP-skripto. Dum ili servas al simila celo, estas subtilaj diferencoj inter ili, kiuj povas influi la konduton de via kodo.
La inkluziva funkcio estas uzata por inkluzivi dosieron kaj daŭrigi la skripto-ekzekuton eĉ se la dosiero ne estas trovita. Se la dosiero ne estas trovita, averta mesaĝo estas montrata, sed la skripto daŭre efektiviĝas. Ĉi tio povas esti utila kiam oni inkluzivas dosierojn, kiuj ne estas kritikaj por la funkcieco de la skripto. Jen ekzemplo:
php include 'myfile.php';
Aliflanke, la postula funkcio estas uzata por inkluzivi dosieron kaj haltigi la skripto-ekzekuton se la dosiero ne estas trovita. Se la dosiero ne estas trovita, fatala eraro montriĝas, kaj la skripto-ekzekuto estas ĉesigita. Ĉi tio estas utila kiam oni inkluzivas dosierojn esencajn por la funkcieco de la skripto. Jen ekzemplo:
php require 'myfile.php';
En ambaŭ kazoj, la inkluzivita dosiero povas enhavi PHP-kodon, HTML-markadon aŭ kombinaĵon de ambaŭ. La inkluzivita dosiero estas traktata kvazaŭ ĝia enhavo estus skribita rekte en la loko de la inkludi aŭ postulas deklaron.
Indas noti, ke ambaŭ inkluzivas kaj postulas ankaŭ povas esti uzataj kun absoluta aŭ relativa vojo por inkluzivi dosierojn de malsamaj dosierujoj. Ekzemple:
php include '/path/to/myfile.php'; require '../path/to/myfile.php';
Kiam vi uzas inkluzivi aŭ postuli, gravas konsideri la efikon al rendimento kaj sekureco. Inkluzivi nenecesajn dosierojn aŭ inkluzivi dosierojn de nefidindaj fontoj povas enkonduki vundeblecojn al via aplikaĵo. Tial oni rekomendas uzi inkluzivi kaj postuli singarde kaj certigi, ke la inkluzivitaj dosieroj estas necesaj kaj sekuraj.
La ĉefa diferenco inter la funkcioj inkluzivi kaj postuli en PHP estas, ke include montros averton kaj daŭrigos la skripto-ekzekuton se la dosiero ne estas trovita, dum require montros fatalan eraron kaj haltigos la skripto-ekzekuton. Gravas elekti la taŭgan funkcion laŭ la kritiko de la inkluzivita dosiero.
Aliaj lastatempaj demandoj kaj respondoj pri Progresado en PHP:
- Kio estas iuj operacioj, kiuj povas esti faritaj sur formularaj datumoj en PHP post kiam ĝi estas akirita?
- Kiel ni povas aliri la formularajn datumojn senditajn per la metodoj GET kaj POST en PHP?
- Kio estas la diferenco inter la metodoj GET kaj POST en formularaj sendadoj, kaj kiam ĉiu metodo estu uzata?
- Kiel ni povas inkluzivi la header.php dosieron en niaj HTML-paĝoj uzante PHP?
- Kio estas la avantaĝoj de uzi la "postuli" kaj "inkluzivi" funkcioj en PHP por krei ŝablonojn por TTT-disvolva projekto?
- Kial estas utile uzi inkluzivi kaj postuli funkciojn por krei ŝablonojn en retejo-disvolviĝo?
- Kiel ni povas krei navbar-ŝablonon en PHP?
- Kio okazas se estas eraro dum inkludo de dosiero uzante la inkluzividan funkcion?
- Kiel ni povas inkluzivi dosieron en PHP uzante la deklaron inkluzivi aŭ postuli?
- Kiel ni povas ĝisdatigi la valoron de tutmonda variablo de ene de funkcio en PHP?
Rigardu pliajn demandojn kaj respondojn en Antaŭeniĝo en PHP