Njia za Kupatana katika PHP
Kama unavyojua, kwenye kigezo cha kitendo file_get_contents
inapaswa kuandikwa jina la faili. Hii, hata hivyo, inafanya kazi
tu ikiwa faili inayosomwa iko
katika folda ile ile ambayo hati yetu inaanzishwa.
Ikiwa faili iko mahali pengine, basi kwenye kigezo cha kitendo inahitajika kuandika njia ya kupatana kwa faili hiyo.
Tutaangalia kwa mfano.
Mfano
Wacha tuwe na muundo ufuatao wa mafaili:
- index.php
- /directory/
- test.txt
Wacha tusome yaliyomo kwenye faili ya maandishi. Kwa ajili hii licha ya jina la faili tunahitaji kubainisha folda ambayo iko:
<?php
echo file_get_contents('directory/test.txt');
?>
Mfano
Wacha tuwe na muundo ufuatao wa mafaili:
- /script/
- index.php
- test.txt
Katika hali kama hii, jaribio la kusoma faili letu, kwa kubainisha njia ya kupatana kama jina lake, litaishia kwa kosa:
<?php
echo file_get_contents('test.txt'); // itatoa kosa
?>
Kwa nini kosa linatolewa? Jambo ni kwamba kwenye kigezo cha kitendo tuliandika jina la faili. Hii inamaanisha kuwa faili inayosomwa inapaswa kuwekwa katika folda ile ile na ile inayoanzishwa.
Hata hivyo, faili yetu inayosomwa iko kiwango cha juu zaidi, yaani katika folda ile inayoshikilia folda iliyo na hati.
Katika hali kama hii, inapaswa tubainishe wazi kwenye njia
ya kupatana kwa faili, kwamba faili hii inahitaji kutafutwa kiwango
cha juu zaidi. Kwa ajili hii kabla ya jina la faili inapaswa
kuandikwa ../. Wacha tufanye hivyo:
<?php
echo file_get_contents('../test.txt'); // faili itasomwa
?>
Mfano
Wacha tuwe na muundo ufuatao wa mafaili:
- /script/
- index.php
- /directory/
- test.txt
Katika hali hii wakati wa kusoma faili, kwanza tutatoka kiwango cha juu zaidi, kisha tutabainisha njia kupatana kwa faili letu kuhusiana na kiwango hiki:
<?php
echo file_get_contents('../directory/test.txt');
?>
Mfano
Wacha tuwe na muundo ufuatao wa mafaili:
- /script/
- /test/
- index.php
- /test/
- /directory/
- test.txt
Katika hali hii, tutahitaji kutoka nje mara mbili:
<?php
echo file_get_contents('../../directory/test.txt');
?>
Kazi za Vitendo
Andika msimbo, utakausoma yaliyomo kwenye faili ya maandishi:
- index.php
- /dir1/
- /dir2/
- test.txt
- /dir2/
Andika msimbo, utakausoma yaliyomo kwenye faili ya maandishi:
- /script/
- index.php
- /dir1/
- /dir2/
- test.txt
- /dir2/
Andika msimbo, utakausoma yaliyomo kwenye faili ya maandishi:
- /script1/
- /script2/
- index.php
- /script2/
- /dir/
- test.txt
Andika msimbo, utakausoma yaliyomo kwenye faili ya maandishi:
- /script1/
- /script2/
- /script3/
- index.php
- /script3/
- /script2/
- /dir1/
- /dir2/
- /dir3/
- test.txt
- /dir3/
- /dir2/