PHP 8.5.0 Alpha 4 available for testing

Voting

: min(six, four)?
(Example: nine)

The Note You're Voting On

Alex Russell
9 years ago
I was trying to work out the difference between this and getBasename (http://php.net/manual/splfileinfo.getbasename.php) and the only difference I could really see was a special case of a file in the filesystem root with the root specified:

<?php
function getInfo($reference)
{
$file = new SplFileInfo($reference);

var_dump($file->getFilename());
var_dump($file->getBasename());
}

$test = [
'/path/to/file.txt',
'/path/to/file',
'/path/to/',
'path/to/file.txt',
'path/to/file',
'file.txt',
'/file.txt',
'/file',
];

foreach (
$test as $file) {
getInfo($file);
}

// will return:
/*
string(8) "file.txt"
string(8) "file.txt"

string(4) "file"
string(4) "file"

string(2) "to"
string(2) "to"

string(8) "file.txt"
string(8) "file.txt"

string(4) "file"
string(4) "file"

string(8) "file.txt"
string(8) "file.txt"

string(9) "/file.txt" // see how getFilename includes the '/'
string(8) "file.txt" // but getBasename doesn't

string(5) "/file" // ditto getFilename
string(4) "file" // ditto getBasename
*/

?>

<< Back to user notes page

To Top