PHP'деги салыштырмалуу жолдор
Сиз билгендей, file_get_contents функциясынын
параметрине файлдын атын жазуу керек. Бирок, бул
ошол папкада болгон учурда гана иштейт,
окулуучу файл биздин скрипт башталган жерде
жатат.
Эгерде файл башка жерде жатса, анда функциянын параметрине ошол файлга чейинки жолду жазуу керек.
Мисал менен карап көрөлү.
Мисал
Бизде төмөнкү файлдардын түзүлүшү бар деп коёлу:
- index.php
- /directory/
- test.txt
Текст файлынын мазмунун окуп көрөлү. Бул үчүн файлдын атынан тышкары бизге жатуучу папканы да көрсөтүү керек болот:
<?php
echo file_get_contents('directory/test.txt');
?>
Мисал
Бизде төмөнкү файлдардын түзүлүшү бар деп коёлу:
- /script/
- index.php
- test.txt
Мындай учурда, биздин файлды окууга аракет кылып, жол катары анын атын гана көрсөтсөк, ката менен аяктайт:
<?php
echo file_get_contents('test.txt'); // ката чыгарат
?>
Эмне үчүн ката чыгат? Мунун себеби, биз функциянын параметрине файлдын атын жаздык. Бул окулуучу файл иштетилүүчү ошол папкада болушу керек дегенди билдирет.
Бирок, биздин окулуучу файл бир деңгээл жогору, башкача айтканда, скрипт бар папканы камтыган папкада жайгашкан.
Мындай учурда биз жолдо
файлды, бул файлды бир деңгээл жогору издеш керек деп
так көрсөтүшүбүз керек. Бул үчүн файлдын атынан мурун
жазышыбыз керек ../. Муну жасап көрөлү:
<?php
echo file_get_contents('../test.txt'); // файл окулат
?>
Мисал
Бизде төмөнкү файлдардын түзүлүшү бар деп коёлу:
- /script/
- index.php
- /directory/
- test.txt
Бул учурда файлды окуганда биз алгач бир деңгээл жогору чыгып, андан кийин жолду көрсөтөбүз ошол деңгээлге салыштырмалуу биздин файлга чейинки:
<?php
echo file_get_contents('../directory/test.txt');
?>
Мисал
Бизде төмөнкү файлдардын түзүлүшү бар деп коёлу:
- /script/
- /test/
- index.php
- /test/
- /directory/
- test.txt
Бул учурда бизге жогору чыгуу үчүн эки жолу керек болот:
<?php
echo file_get_contents('../../directory/test.txt');
?>
Практикалык тапшырмалар
Төмөнкү текст файлынын мазмунун окуган кодду жазыңыз:
- index.php
- /dir1/
- /dir2/
- test.txt
- /dir2/
Төмөнкү текст файлынын мазмунун окуган кодду жазыңыз:
- /script/
- index.php
- /dir1/
- /dir2/
- test.txt
- /dir2/
Төмөнкү текст файлынын мазмунун окуган кодду жазыңыз:
- /script1/
- /script2/
- index.php
- /script2/
- /dir/
- test.txt
Төмөнкү текст файлынын мазмунун окуган кодду жазыңыз:
- /script1/
- /script2/
- /script3/
- index.php
- /script3/
- /script2/
- /dir1/
- /dir2/
- /dir3/
- test.txt
- /dir3/
- /dir2/