Home > Article > Backend Development > PHP Learning File Processing and File Upload Courseware Page 1/2_PHP Tutorial
PHP's processing of files
In the application of PHP's server-side files, the relevant scope is not only the various connection and access operations between the user and the server database, but also through PHP's built-in file processing function. General file processing operations.
basename -- Returns the file name part of the path
Syntax format: $path = "/home/httpd/html/index.php";
$file = basename($path); // $file is set to "index.php"
$file = basename($path,".php"); // $file is set to "index"
pathinfo(): Analysis File current path
Syntax format: $path_parts = pathinfo("/www/htdocs/index.html");
echo $path_parts["dirname"] . "n"; /www/htdocs File path
echo $path_parts["basename"] . "n"; index.html File and extension
echo $path_parts["extension"] . "n"; html File format
File type and related Information
filesize(): Calculate the size of the file (byte)
Syntax format: $bytes=filesize(“a.txt”);
echo $bytes round($bytes/1024,2);
fileatime(): file last access time (timestamp)
Syntax format: echo date(“Y-m-d g:i:sa”,fileatime);
filectime(): file creation time
Syntax Format: echo date(“Y-m-d g:i:sa”, filectime);
filemtime(): the last update time of the file
Syntax format: echo date(“Y-m-d g:i:sa”,filemtime);
fileperms(): file attributes and permissions in decimal format
Syntax format: echo substr(base_convert(fileperms(a.txt),10,8),3);
fileowner(): file owner uid (only useful under Linux system)
Syntax format: echo fileowner("a.txt");
File operation
'r' Open in read-only mode, point the file pointer to File header.
'r+' Open in read-write mode and point the file pointer to the file header.
'w' opens in writing mode, points the file pointer to the file header and truncates the file size to zero. If the file does not exist, try to create it.
'w+' Open in reading and writing mode, point the file pointer to the file header and truncate the file size to zero. If the file does not exist, try to create it.
'a' opens in writing mode and points the file pointer to the end of the file. If the file does not exist, try to create it.
'a+' Open in read-write mode and point the file pointer to the end of the file. If the file does not exist, try to create it.
'x' Create and open for writing, pointing the file pointer to the file header. If the file already exists, the fopen() call fails and returns FALSE, and generates an E_WARNING level error message. If the file does not exist, try to create it. This is equivalent to specifying the O_EXCL|O_CREAT flag for the underlying open(2) system call. This option is supported by PHP 4.3.2 and later, and can only be used for local files.
'x+' Create and open in read-write mode, pointing the file pointer to the file header. If the file already exists, the fopen() call fails and returns FALSE, and generates an E_WARNING level error message. If the file does not exist, try to create it. This is equivalent to specifying the O_EXCL|O_CREAT flag for the underlying open(2) system call. This option is supported by PHP 4.3.2 and later, and can only be used for local files.
fopen() -- Open a file or URL
fclose() -- Close an open file pointer
fread() -- Read file content
fwrite() -- Write file
Syntax format: if(!$f=@fopen("file03.php","x")){//Open a file x method writes
die("File reading failed" ); //Read failed
}
fwrite($f,"kkkkkkkkkk"); //Write to that file What to write
echo fread($f,10); //Read this file Contents
fclose($f); Close the open file
file() -- Read the entire file into an array
Syntax format: $arr=file("file03. php");
print_r($arr); //Read the file and return the array
readfile() - Read a file and write it to the output buffer.
Syntax format: $str=readfile("file03.php");
echo $str; Output
Writing of a file counter:
$f=fopen("file03 .php","r");
$i=fread($f,1000);
echo "This is your {$i}th visit";
fclose($f);
$f=fopen("file03.php","w");
$i++;
fwrite($f,$i);
fclose($f);
`` ````````````````````````````````````
file_get_contents() – Read the entire file A string
syntax format: file_get_contents (file name or URL)
file_put_contents() –? Write a string to the file, and call the fopen(), fwrite() and fclose() functions in sequence Same as
file_put_contents (file name, write data)
feof() -- Test whether the file pointer has reached the end of the file
ftell() -- Return the file pointer for reading/writing Position
Syntax format ftell (file pointer)
flock() -- lightweight consultation file locking
Syntax format: flock (file pointer, control parameter)
File pointer: is an open ( fopen) file pointer control parameters:
"LOCK_SH" means to obtain a shared lock (reader), (setting 1 for versions prior to PHP 4.0.1).
"LOCK_EX" means to obtain an exclusive lock (writer), (set to 2 in previous versions of PHP 4.0.1).
"LOCK_UN" means to release the lock (whether shared or exclusive), (set to 3 in previous versions of PHP4.0.1).
"LOCK_NB" means that if you don't want flock() to block when locking, add this parameter to the control parameter
fseek( ) -- locate the
syntax structure in the file pointer: fseek (file pointer, number of characters to move [, starting position constant])
File pointer: cannot be used to open the returned file in "http://" or "ftp://" format in fopen() File pointer.
Move the number of characters: When it is a positive number, move the file pointer forward by the specified number: When it is a negative number, move the file pointer backward by the specified number:
Starting position constant:
SEEK_CUR - Set the location to the current location.
SEEK_SET - Set the position equal to the beginning of the file. (Default value)
SEEK_END - Set the position to the end of the file.
rewind( ) -- Rewind the position of the file pointer, that is, move the file pointer to the beginning of the file.
Syntax structure: rewind (file pointer)
Note: If the file is opened in append ("a" or "a+") mode, any data written to the file will always be appended, regardless of the file pointer Location
chgrp( ) -- Change the group to which the file belongs
Syntax structure: chgrp (file name, group name)
filegroup( ) -- Get the group of the file
Grammar structure: filegroup (file name)
chmod( ) -- Change file mode
Grammar structure: chmod (file name, permission constant) 755 666
chown( ) -- Change the owner of the file
Syntax structure: chown (file name, user)
fileowner( ) -- Get the owner of the file
Syntax structure: fileowner (file name)
posix_getpwuid () to parse it into a username.
copy( ) -- copy file
Syntax structure: copy (source file, destination file)
Return type: bool, TRUE if successful, TRUE if failed Return FALSE.
Parameter description: Copy the source file to the destination file.
unlink() -- Delete file
Syntax structure: unlink (target file)
Return type: bool type, TRUE if successful, FALSE if failed.
Parameter description: Delete the specified target file
rename() -- Rename a file or directory
Syntax structure: rename (old file name, new file name)
Return type: bool type, Returns TRUE if successful, FALSE if failed.
Parameter description: Try to rename the old file name to the new file name.
File attribute processing
file_exists( ) -- Check whether the file or directory exists
Syntax structure: file_exists (file name)
Return type: bool type, if it exists, return true, otherwise return false.
filesize( ) -- Get the file size
Syntax structure: filesize (file name)
Return type: Return the file size in bytes, if an error occurs, return false.
filetype( ) -- Get the file Type
Syntax structure: filetype (file name)
Return type: Returns the file type. Possible values are fifo, char, dir, block, link, file and unknown.If an error occurs, return false
is_dir( ) -- Determine whether the given file name is a directory
Syntax structure: is_dir (name)
Return type: If the file name exists and is a directory, return true, otherwise Return false.
is_executable( ) -- Determine whether the given file name is executable
Syntax structure: is_executable (name)
Return type: Return TRUE if the file exists and is executable, otherwise return FALSE.
is_file() -- Determine whether the given file name is a normal file
Syntax structure: is_file (name)
Return type: TRUE if the file exists and is a normal file.
is_link( ) -- Determine whether the given file name is a symbolic link
Syntax structure: is_link(name)
Return type: Returns true if the file exists and is a symbolic link.
is_readable( ) -- Determine whether the given file name is readable
Syntax structure: is_readable (file name)
Return type: Returns TRUE if the file exists and is readable.
is_writable( ) -- Determine whether the given file name is writable
Syntax structure: is_writable (file name)
Return type: TRUE if the file exists and is writable.
Implement directory reading of iterator interface
Standard method of Iterator interface
current(): Returns the element value in the current list (list).
next(): used to move down one position in a list.
valid(): Check whether there is a next element in the current list. If so, return true, otherwise return false.
rewind(): You can access the element list of the specified characteristics. When starting to operate the iterator, the pointer will be set at the top.