PHP 5.4.36 Released

定義済み定数

以下の定数が定義されています。 この関数の拡張モジュールが PHP 組み込みでコンパイルされているか、 実行時に動的にロードされている場合のみ使用可能です。

DIRECTORY_SEPARATOR (string)
PATH_SEPARATOR (string)
PHP 4.3.0 以降で使用可能です。Windows の場合はセミコロン、それ以外の場合はコロンとなります。
SCANDIR_SORT_ASCENDING (integer)
PHP 5.4.0 以降で使用可能です。
SCANDIR_SORT_DESCENDING (integer)
PHP 5.4.0 以降で使用可能です。
SCANDIR_SORT_NONE (integer)
PHP 5.4.0 以降で使用可能です。
add a note add a note

User Contributed Notes 3 notes

up
10
Anonymous
9 months ago
In PHP 5.6 you can make a variadic function.

<?php
/**
* Builds a file path with the appropriate directory separator.
* @param string $segments,... unlimited number of path segments
* @return string Path
*/
function file_build_path(...$segments) {
    return
join(DIRECTORY_SEPARATOR, $segments);
}

file_build_path("home", "alice", "Documents", "example.txt");
?>

In earlier PHP versions you can use func_get_args.

<?php
function file_build_path() {
    return
join(DIRECTORY_SEPARATOR, func_get_args($segments));
}

file_build_path("home", "alice", "Documents", "example.txt");
?>
up
13
Anonymous
1 year ago
For my part I'll continue to use this constant because it seems more future safe and flexible, even if Windows installations currently convert the paths magically. Not that syntax aesthetics matter but I think it can be made to look attractive:

<?php
$path
= join(DIRECTORY_SEPARATOR, array('root', 'lib', 'file.php');
?>
up
0
Paulo Marques
1 year ago
DIRECTORY_SEPARATOR is not necessarily needed, PHP always converts / to the appropriate character in its file functions.
It is good practice, though.
To Top