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.txt containing "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.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
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.
