Home > Backend Development > PHP Tutorial > PHP Programming Habits Eight Common File Operation Methods in PHP Programming

PHP Programming Habits Eight Common File Operation Methods in PHP Programming

WBOY
Release: 2016-07-29 08:35:02
Original
960 people have browsed it

File and directory operations
It is very convenient for PHP to handle files and directories on the local server, but sometimes permissions and path-related problems may occur
1. Open the file
resource fopen ( string filename, string mode [, bool use_include_path [ , resource zcontext]] )
$handle = fopen(filename,mode)//Open the file and return the handle representing the resource of this file
The file name can use a relative path or an absolute path or the network protocol mode. The open mode has rr +ww+aa+xx+b
If you do not specify the 'b' flag when operating binary files, you may encounter some strange problems, including broken image files and strange problems with the rn character.
For portability reasons, it is strongly recommended to always use the 'b' flag when opening files with fopen().
The following are several ways to open files
$fp = @fopen('log.txt',"rb");
$fp = @fopen('../log.txt',"rb");
$ fp = @fopen("http://www.runer.com.cn/default.htm","rb");//You can also use protocols such as ftp and ghoper. The allow_url_fopen option in the php.ini file must be enabled
//////////////////////////////Code part///////////////////// /////////////////////
$filename1 = "userinfo.txt";//This file exists in the directory or include_path
$filename2 = "test.txt"; //This file does not exist in the directory or include_path
$resource1 = fopen($filename1,"rb");
@$resource2 = fopen($filename2,"rb");//Because this file does not exist in the directory, And if you do not use include_path or include_path to find the path of the included file, this operation will report an error. Using the error suppressor @ can force the browser not to output an error message
if ($resource1)
echo "Open file {$filename1} successfully";
if (!@fopen($filename2,"r"))
echo "Failed to open file {$filename2}";
///////////////////////// ///////////////////////////////////////////////////// /
---------------------Output results------------------------- ---------------
The file userinfo.txt was opened successfully
--------------------------- ------------------------------------------
2. After using the file, To explicitly tell PHP that you have finished using the file, let the operating system ensure that all the contents of the file are correctly flushed from the buffer to the hard disk
Use fclose() to close the file,
bool fclose (resource handle)//Close an open File pointer
3. Read the file, the mode parameter of the fopen function allows reading, PHP provides several functions to read data from the file
string fgets (int handle [, int length]) reads a line from the file pointer, in Trying fgets on a binary file will produce unpredictable results
If you don't specify the length, it will read 1K of data by default, and stop after encountering a newline character (included in the return value), EOF or length - 1 bytes have been read
string fgetss (resource handle [, int length [, string allowable_tags]] ) reads a line from the file pointer and filters out HTML tags
fgetc() reads a single character
fread() reads arbitrary binary data
///// ////////////////////////Code part/////////////////////////// ///////////////
$handle = fopen ("test.jpg", "rb");
$c;
while (!feof($handle)) {
$contents .= @fread($handle, 8192);//Loop reading and merge it into one large file
}
fclose($handle);
//////////////// ///////////////////////////////////////////////////// /////////
------------------------Output results----------------- -----------------------
-------------------------- ---------------------------------------------
4. Determine file reading
Each file handle has a file pointer, or a cursor that indicates where in the file the next operation will occur, depending on the mode parameter of the fopen function
The file pointer is initially located at the beginning of the file (0), or at the end of the file
feof() can determine whether the file has reached the end (the function returns TRUE after reaching the end)
filesize() function returns the size of the file 5. Write the file
fwrite() function performs file writing
/////// //////////////////////Code part///////////////////////////// /////////////
$filename = 'test.txt';
$somec;
// First we need to make sure the file exists and is writable.
if (is_writable($filename)) {
// In this example, we will open $filename using add mode,
// Therefore, the file pointer will be at the beginning of the file,
// That is when we use fwrite (), where $somecontent will be written.
if (!$handle = fopen($filename, 'a')) {
echo "Cannot open file $filename";
exit;
}
//Write $somecontent to the file we opened.
if (fwrite($handle, $somecontent) === FALSE) {
echo "Unable to write to file $filename";
exit;
}
echo "Successfully written $somecontent to file $filename";
fclose($handle);
} else {
}
echo "File $filename is not writable";
/////////////////////////// ///////////////////////////////////////////////////
- --------------------Output results---------------------------------- ------------
Successfully added these text to the file and wrote it to the file test.txt
--------------------- ------------------------------------------------
For For binary data, the third parameter must be specified, which contains the number of data bytes written to disk
$result = @fwrite($fp,$binary_data,mb_strlen($binary_data,'8bit'));
6. File permissions and other information
is_readable()//Judge whether the file is readable
is_writeable()//Judge whether the file is writable
is_writable()//Judge whether the file is writable
fileperms()//Judge the file permissions (UNIX style File permission test function)
file_exists()//Whether this file exists
fileowner()//Determine the user to whom the file belongs
filegroup()//Determine the group to which the file belongs
7. Delete and rename the file
unlink()//Delete File
rename()//Rename file
8. Access directory
It is recommended to use forward slash "/" for directory access, compatible with windows and unix systems
basename()//Return the file name without path information
dirname( )//Return the directory part of the file name
realpath()//Accept relative paths and return the absolute path of the file
pathinfo()//Extract the directory name, base file name and extension of the given path
opendir()//Open Directory, return the resource handle
readdir()//Read the directory item
rewinddir()//Return the reading pointer to the beginning
closedir()//Close the read handle
chdir()//Change the current value during the execution of the current script Working directory
mkdir()//Create directory
rmdir()Delete directory
//////////////////////////////Code part/// //////////////////////////////////////
///////////// ///////////////////////////////////////////////////// ////////////
------------------------Output results-------------- --------------------------
filename: web : filetype: dir
filename: study : filetype: dir

The above introduces PHP programming habits and eight common file operation methods in PHP programming, including PHP programming habits. I hope it will be helpful to friends who are interested in PHP tutorials.

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template