Home > Article > Backend Development > Common functions for reading local files in php
Below we use .txt file as an example to introduce the function of PHP to read local files. To read files, we can use fopen or file_get_contents to read. File_get_contents is simpler, but fopen requires the cooperation of fread to display the read content.
1. First, let’s introduce the fopen() function
Below we give a code demo for directly opening a local file. We have added comments where necessary.
Example code for directly opening a local file:
//Suppose our local file is a text named xmlas.txt
$filedemo = "xmlas.txt";
$fpdemo = fopen($filedemo,"r");
if ($fpdemo){
while(!feof($fpdemo)){
//Number of characters read by 1000
$datademo = fread($fpdemo, 1000);
);
} }
echo $datademo;
?>
2. Use the file_get_contents() function to output the entire file in a string. If there is such a sentence in our xmlas.txt text file: Now Movies are becoming less and less passionate. If you want to have all the climax, please watch Japanese love action movies. Then the example code of our file_get_contents() function is as follows:
echo file_get_contents("xmlas.txt");
//The output content at this time is the content in xmlas.txt:
//Today’s movies are becoming less and less passionate. If you want to have all the climax, please watch Japanese love action movies!
?>
3. How to read a local folder instead of a separate file:
Please see the example code below. In the example we will read a folder named xmlas, the code is as follows:
$dirdemo = opendir('/xmlas');
while(($filedemo = readdir($dirdemo))!=false){
if ($filedemo!="." && $filedemo!="..") {
$nsdemo = explode('.', $filedemo);
echo $nsdemo[0];
}
}
closedir ($dirdemo);
?>
4. We can also use fopen to write files, the code is as follows:
/**
*Use fopen to write files
*@param string $filename
*@param string $contents
*@return boolean
*/
function wirte($filename,&$contents)
{
$fp =fopen($filename,"wb");
if($fp)
{
flock($fp,LOCK_EX);//Lock the file at the same time, only one person can operate it
fwrite($fp, $contents);
flock($fp,LOCK_UN);//Save the data to unlock the file and save it
fclose($fp);//Open source code phpfensi.com
return true;
}else
{
return false;
}
}
In this way, you can read and write files by using fopen and fwrite.
Note: To open a file, before opening the file, we need to know the path of the file, and Whether this file exists.
Use the $_SERVER["DOCUMENT_ROOT"] built-in global variable to obtain the relative path of the site, as follows:
$root = $_SERVER["DOCUMENT_ROOT"];
Use the function file_exists() to Check whether the file exists, as follows:
If(!file_exists("$root/order.txt")){echo 'The file does not exist';}
This may be more reasonable and practical.