


Eight common file manipulation methods in PHP applications_PHP Tutorial
PHP’s unique syntax mixes C, Java, Perl and PHP’s own innovative syntax. PHP installs it and can execute dynamic web pages faster than CGI or Perl. Compared with other programming languages, dynamic pages made with PHP embed programs into HTML documents for execution, and the execution efficiency is much higher than CGI that completely generates HTML tags; PHP can also execute compiled code, and the compilation can Achieve encryption and optimize code running, making the code run faster. PHP has very powerful functions. PHP can realize all CGI functions and supports almost all popular databases and operating systems.
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
File names can use relative paths or absolute paths or use network protocol mode. The opening mode has r+ww+aa+xx+. If you do not specify the b mark when operating binary files, you may encounter some strange problems. Includes corrupted image files and information about Weird issues with characters.
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, which must be enabled in the php.ini file allow_url_fopen option
//////////////////////////////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 the include_path or include_path is not used to find the path of the included file, this operation will report an error. You can use the error suppressor @ Force the browser not to output error messages
if($resource1)
echo "Opening 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, you must explicitly tell PHP that the file has been used, so that the operating system ensures 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 a file pointer. Trying fgets on a binary file produces unpredictable results
If the length is not specified, 1K data will be read by default, and it will 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 any binary data
//////////////////////////////Code part////////////////// ////////////////////////
$handle = fopen ("test.jpg", "rb");
$c;
while (!feof($handle)) {
$contents .= @fread($handle, 8192);//Loop reading and merge it into a large file
}
fclose($handle);
////////////////////////////////////////////////// ////////////////////////////
---------------------Output results--------------------- ----------------
------------------------------------------------ -----------------------
4. Determine the status of file reading
Each file handle has a file pointer, or a cursor that indicates where the next operation will occur in the file, according to 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)
The filesize() function returns the size of the file 5. Write the file
The fwrite() function executes 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 use add mode to open $filename,
// Therefore, the file pointer will be at the beginning of the file,
// That is where $somecontent will be written when we use fwrite().
if (!$handle = fopen($filename, a)) {
echo "Cannot open file $filename";
exit;
}
// Write $somecontent to the file we opened.
if (fwrite($handle, $somecontent) === FALSE) {
echo "Cannot 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 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() // Determine whether the file is readable
is_writeable() // Determine whether the file is writable
is_writable() // Determine whether the file is writable
Fileperms()//Judge 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 files
unlink()//Delete file
rename()//Rename file
8. Visit directory
It is recommended to use the forward slash "/" for directory access, which is compatible with windows and unix systems
basename()//returns the file name excluding path information
dirname()//returns the directory part of the file name
realpath()//Accept relative path and return the absolute path of the file
pathinfo()//Extract the directory name, basic file name and extension of the given path
opendir()//Open the directory and return the resource handle
readdir()//Read directory entry
rewinddir()//Return the reading pointer to the beginning
closedir()//Close the read handle
Chdir()//Change the current working directory during the execution of the current script
mkdir()//Create directory
rmdir() delete directory
//////////////////////////////Code part////////////////// ////////////////////////
////////////////////////////////////////////////// ////////////////////////////
---------------------Output results--------------------- ----------------
filename: web : filetype: dir
filename: study : filetype: di

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



PHP 8.4 brings several new features, security improvements, and performance improvements with healthy amounts of feature deprecations and removals. This guide explains how to install PHP 8.4 or upgrade to PHP 8.4 on Ubuntu, Debian, or their derivati

Visual Studio Code, also known as VS Code, is a free source code editor — or integrated development environment (IDE) — available for all major operating systems. With a large collection of extensions for many programming languages, VS Code can be c

This tutorial demonstrates how to efficiently process XML documents using PHP. XML (eXtensible Markup Language) is a versatile text-based markup language designed for both human readability and machine parsing. It's commonly used for data storage an

A string is a sequence of characters, including letters, numbers, and symbols. This tutorial will learn how to calculate the number of vowels in a given string in PHP using different methods. The vowels in English are a, e, i, o, u, and they can be uppercase or lowercase. What is a vowel? Vowels are alphabetic characters that represent a specific pronunciation. There are five vowels in English, including uppercase and lowercase: a, e, i, o, u Example 1 Input: String = "Tutorialspoint" Output: 6 explain The vowels in the string "Tutorialspoint" are u, o, i, a, o, i. There are 6 yuan in total

JWT is an open standard based on JSON, used to securely transmit information between parties, mainly for identity authentication and information exchange. 1. JWT consists of three parts: Header, Payload and Signature. 2. The working principle of JWT includes three steps: generating JWT, verifying JWT and parsing Payload. 3. When using JWT for authentication in PHP, JWT can be generated and verified, and user role and permission information can be included in advanced usage. 4. Common errors include signature verification failure, token expiration, and payload oversized. Debugging skills include using debugging tools and logging. 5. Performance optimization and best practices include using appropriate signature algorithms, setting validity periods reasonably,

Static binding (static::) implements late static binding (LSB) in PHP, allowing calling classes to be referenced in static contexts rather than defining classes. 1) The parsing process is performed at runtime, 2) Look up the call class in the inheritance relationship, 3) It may bring performance overhead.

Java 8 introduces the Stream API, providing a powerful and expressive way to process data collections. However, a common question when using Stream is: How to break or return from a forEach operation? Traditional loops allow for early interruption or return, but Stream's forEach method does not directly support this method. This article will explain the reasons and explore alternative methods for implementing premature termination in Stream processing systems. Further reading: Java Stream API improvements Understand Stream forEach The forEach method is a terminal operation that performs one operation on each element in the Stream. Its design intention is

What are the magic methods of PHP? PHP's magic methods include: 1.\_\_construct, used to initialize objects; 2.\_\_destruct, used to clean up resources; 3.\_\_call, handle non-existent method calls; 4.\_\_get, implement dynamic attribute access; 5.\_\_set, implement dynamic attribute settings. These methods are automatically called in certain situations, improving code flexibility and efficiency.
