Mastering PHP’s ftell(): How to Get File Pointer Position with Code Examples
This article explains PHP’s ftell() function, detailing its purpose, parameters, return values, and provides a step‑by‑step code example that reads the first ten bytes of a file, displays the content, and shows how to retrieve the current file pointer position.
In PHP programming, file read/write operations often require knowing the current file pointer position, which can be obtained using the
ftell()function.
This article introduces the usage of
ftell()with code examples.
Function Overview:
ftell(resource $handle): intThe function returns the current position of the file pointer in the byte stream for the handle provided, or false on error.
Parameters:
$handle: The file resource handle obtained via functions like
fopen().
Return Value:
Returns the byte offset of the current file pointer, or false on failure.
Code Example:
The following example uses
ftell()to read the first 10 bytes of a file and obtain the pointer position:
<?php
$filename = "example.txt";
$handle = fopen($filename, "r");
if ($handle) {
$content = fread($handle, 10);
echo "File content: " . $content . "<br/>";
$position = ftell($handle);
echo "File pointer position: " . $position;
fclose($handle);
} else {
echo "Unable to open file!";
}
?>Running this code with
example.txtcontaining "Hello, World!" produces:
File content: Hello, Wor
File pointer position: 10The script opens the file with
fopen(), reads 10 bytes using
fread(), prints the content, then calls
ftell()to get the pointer position, prints it, and finally closes the file with
fclose().
Note that
ftell()returns the byte offset; when a file is opened in text mode, characters such as Chinese characters may occupy multiple bytes, so the offset reflects bytes, not characters.
Conclusion
The
ftell()function is a practical tool in PHP file operations, allowing developers to easily obtain the current file pointer position and combine it with other file functions for flexible processing, thereby improving code efficiency.
php中文网 Courses
php中文网's platform for the latest courses and technical articles, helping PHP learners advance quickly.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.