Да би се подаци сачували у датотеку, постоји посебна функција у ПХП-у филе_пут_цонтентс (). Уз његову помоћ, можете снимити информације у датотеку на различите начине. Размотримо све примере ПХП филе_пут_цонтентс.
Горња метода је врло једноставна. Она не открива све карактеристике функције и погодна је само за демонстрирање њеног рада.
Уосталом, не заборавите да овај начин снимања може да пропадне на радном месту. Будући да датотека може примити захтјев за читање и писање у исто вријеме. Да бисте избегли такве инциденте, морате да дате нашем скрипту ексклузиван приступ датотеци. Да бисте то урадили, користите заставу ЛОЦК_ЕКС.
филе_пут_цонтентс (доцумент.ткт, $ инфо, ЛОЦК_ЕКС);
?>
Сада користећи ЛОЦК_ЕКС, сви захтеви ће се обрадити.
У горенаведеним примерима, функција филе_пут_цонтентс () форматира датотеку пре писања нових информација у њу. Такође, без брисања претходних података, сачувајте нову на крај применом заставице ФИЛЕ_АППЕНД.
Ако је запис успешан, функција враћа вредност као величину датотеке у бајтовима, ау случају неуспеха враћа ФАЛСЕ. Познавајући ове информације, можете извршити провјеру, као што је наведено у горњем примјеру.
За писање низова у датотеку, можете користити исту функцију, али прије тога поље мора бити серијски. Другим речима, претворите га у текст. И након писања, десериализе све натраг у низ.
$ масс = арраи (1,2,3); // Ово је низ.
$ доцумент = 'доцумент.ткт'; // Филе.
$ инфо = серијски ($ масс); // Овде се низ серијализује.
филе_пут_цонтентс ($ доцумент, $ инфо); // Запишите га у датотеку.
$ инфо = филе_гет_цонтентс ($ доцумент); // Прочитајте датотеку.
$ масс = унсериализе ($ инфо); // Десеријализација података датотеке за враћање поља у првобитно стање.
?>
Постоји још једна опција за писање података преко ПХП-а - користећи функције фопен (), фврите (), фцлосе (). Они су слични ПХП филе_пут_цонтентс (), али дозвољавају детаљнији приступ писању скрипте која изводи различите операције датотека.
Када користите функцију, фопен () морате да одредите начин рада.
У овом примеру, фопен () функција са “В” модом (писање) може само да записује податке у датотеку. Стога ће његов садржај бити избрисан. Ако нема датотеке са овим именом, скрипта ће је креирати.
$ филе = фопен ($ документ, "в +"); // Отворите датотеку.
Онда је датотека записана: