This article summarizes and analyzes the php file system processing methods. Share it with everyone for your reference, the details are as follows:
File Type
Based on Linux, in Windows you can only get three types: file, dir or unknown
Under Linux/Unix, block, char, dir, fifo, file, link, unknown7 types
block : block configuration files, disk partitions, floppy drives, cd-rom, etc.
char: character device, I/O (input and output) device in character units, such as keyboard, printer, etc.
dir: Directory is also a type of file/directory file
fifo: Information pipe, transferred from one program to another
file: Common file types such as text files, executable files
link: Link file, equivalent to shortcut under windows
unknown :Unknown type
1. File attribute processing function
filetype("directory or file name") gets the type
is_dir -- Determine whether the given file name is a directory
is_file -- Determine whether the given file name is a normal file
is_link -- Determine whether the given file name is a symbolic link
is_executable(); -- Determine whether the given file name is executable
file_exists();--whether the file exists
filesize();--Return file size
is_readable();--whether the file is readable
is_writeable();--whether the file is writable
filectime();--File creation time
filemtime();--File modification time
fileacttime();--The last access time of the file
stat();--File status, returns an array of information about the given file
bool ftruncate (resource handle, int size);
Accepts the file pointer handle as a parameter and truncates the file size to size. Returns TRUE on success, FALSE on failure.
bool rename ( string oldname, string newname [, resource context] );
2. Table of Contents
Directory Properties
* basename(url[,扩展名]); //返回文件名 * dirname(url); //目录名 * pathinfo(url); //路径信息
Example:
$path="/var/www/html/page.php"; echo basename($path);// 返回page.php echo basename($path,".php"); //page echo dirname($paht);// /var/www/html $arr=pathinfo($paht); $arr["dirname"] // /var/www/html $arr["basename"]// page.php $arr["extension"]// .php
Traverse directories
opendir(url); readdir(url);//返回当前目录指针只为的一个文件名,并将目录指针向后移动一位 closedir(url); rewinddir(url);//把目录指针重置到开始处
Statistics directory size
To count the size of a directory, you can only create a recursive function to add up all the files in the directory;
To count disk size, you can use disk_free_space(url); and disk_total_space(url);
Create and delete directories
mkdir(url);//建立目录 rmdir(url);//删除空目录 unlink(url);//删除文件
To delete a non-empty directory, you can only create a recursive function yourself;
Copy directory
copy($scrfile,$to);//复制文件
Have a custom recursive function to implement directory copy function
3. Basic file operations
fopen(url); fclose(url);
Write to file
int fwrite(resoure handle,strint string[,int length]);
Returns the number of characters written or FALSE
fputs() is an alias of fwrite()
int file_put_contents ( string filename, string data [, int flags [, resource context]] );
The function is the same as calling fopen(), fwrite() and fclose() in sequence.
Read file
string fread ( resource handle, int length );
Read up to length bytes from the file pointer handle. This function finishes reading length bytes or reaches EOF
string file_get_contents ( string filename [, bool use_include_path [, resource context [, int offset [, int maxlen]]]] ); array file ( string filename [, int use_include_path [, resource context]] );
Each unit in the array is a corresponding line in the file, including newlines.
string fgets ( resource handle [, int length] ); string fgetc ( resource handle ); int readfile ( string filename [, bool use_include_path [, resource context]] );
Read in a file and write to the output buffer.
If you access remote files, you must activate the "allow_url_fopen" option in the PHP configuration file before you can use the fopen() function to open the remote file
When using the FTP protocol to connect to remote files, you can only open the file in "read-only" or "write-only" mode.
Move file pointer
int ftell ( resource handle );
Returns the position of the file pointer specified by handle, which is the offset in the file stream.
int fseek ( resource handle, int offset [, int whence] );
Set the file pointer position in the file associated with handle. The new position, measured in bytes from the beginning of the file, is the position specified by whence plus offset. whence de value is defined as:
SEEK_SET - Set position equal to offset bytes.
SEEK_CUR - Set the position to the current position plus offset.
SEEK_END - Set the position to the end of the file plus offset. (To move before the end of the file, pass a negative value for offset.)
bool rewind ( resource handle );
Set handle's file position pointer to the beginning of the file stream
Readers who are interested in more PHP related content can check out the special topics of this site: "Summary of PHP File Operations", "Summary of PHP Operations and Operator Usage", "Summary of PHP Network Programming Skills", "Introduction Tutorial on PHP Basic Grammar" ", "Summary of PHP office document operation skills (including word, excel, access, ppt)", "Summary of PHP date and time usage", "Introduction to PHP object-oriented programming tutorial", "Summary of PHP string (string) usage" , "Introduction Tutorial on PHP MySQL Database Operation" and "Summary of Common PHP Database Operation Skills"
I hope this article will be helpful to everyone in PHP programming.