Сообщения с тегами ‘file_get_contents’

Чтение данных из файла

В прошлой статье я описал как возможно записать данные в файл, но как же их извлечь оттуда? Для этого надо файл прочитать. Сделать это довольно таки просто:


<?php

$data_array 
= @file('./dir/file.txt');

foreach(
$data_array as $k=>$v)

{

       echo 
'Строка номер '.$k+1.' содержит данные '.$v.'<br/>';

}

?>

Функция file читает данные из файла в массив где каждый элемент массива-это строка файла. Ну а после для наглядности я преебираю весь массив.
Ну массив это конечно хорошо, но как поступить когда надо файл считать в строку? Во первых можно использовать тот же оператор file но дополнительно сделать вот так:


<?php

$data_string 
implode('',file('./dir/file.txt'));

В $data_string теперь находится текст файла превращенный в одну строку со всеми символами. Функция implode обьединяет массив в строку. Так же есть и второй вариант


<?php

 $data_string 
file_get_contents('./dir/file.txt');

?>

Хочу заметить что я привел далеко не полный перечень параметров для данной функции. Я воспользовался только обязательным параметром. Более подробно о ее параметрах я бы рекомендовал вам прочитать в официальной документации.
Но может быть и так что прежде чем открыть файл надо проверить существует он или нет. С этим замечательно справляется функция file_exists


<?php

if(file_exists('./dir/file.txt'))

{

          
//делаем что хотели

}

else

{

         print 
'Error!'//иначе выводим ошибку

}

?>

Каким из вышеперечисленных методов читать файл решать вам. Я предоставил лишь возможные варианты развития.