dirname

(PHP 4, PHP 5, PHP 7)

dirname锟斤拷锟斤拷路锟斤拷锟叫碉拷目录锟斤拷锟斤拷

说锟斤拷

dirname ( string $path ) : string

锟斤拷锟斤拷一锟斤拷锟斤拷锟斤拷锟斤拷指锟斤拷一锟斤拷锟侥硷拷锟斤拷全路锟斤拷锟斤拷锟街凤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷去锟斤拷锟侥硷拷锟斤拷锟斤拷锟侥柯硷拷锟斤拷锟�

锟斤拷锟斤拷

path

一锟斤拷路锟斤拷锟斤拷

锟斤拷 Windows 锟叫o拷斜锟竭o拷/锟斤拷锟酵凤拷斜锟竭o拷\锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷目录锟街革拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷斜锟竭o拷/锟斤拷锟斤拷

锟斤拷锟斤拷值

锟斤拷锟斤拷 path 锟侥革拷目录锟斤拷 锟斤拷锟斤拷锟� path 锟斤拷没锟斤拷斜锟竭o拷锟津返伙拷一锟斤拷锟姐('.'锟斤拷锟斤拷锟斤拷示锟斤拷前目录锟斤拷锟斤拷锟津返回碉拷锟角帮拷 path 锟叫斤拷尾锟斤拷 /component锟斤拷锟斤拷锟揭伙拷锟叫憋拷锟斤拷约锟斤拷锟斤拷娌匡拷郑锟饺ワ拷锟街拷锟斤拷锟街凤拷锟斤拷锟斤拷

锟斤拷锟斤拷锟斤拷志

锟芥本 说锟斤拷
5.0.0 dirname() 锟侥诧拷锟斤拷锟斤拷 PHP 5.0.0 锟芥开始锟角讹拷锟斤拷锟狡帮拷全锟侥★拷
4.0.3 锟斤拷锟斤拷锟斤拷姹撅拷校锟�dirname() 锟斤拷锟斤拷锟斤拷为 POSIX 锟斤拷锟捷★拷

锟斤拷锟斤拷

Example #1 dirname() 锟斤拷锟斤拷

<?php
echo "1) " dirname("/etc/passwd") . PHP_EOL// 1) /etc
echo "2) " dirname("/etc/") . PHP_EOL// 2) / (or \ on Windows)
echo "3) " dirname("."); // 3) .
?>

注锟斤拷

Note:

dirname() operates naively on the input string, and is not aware of the actual filesystem, or path components such as "..".

Note:

dirname() is locale aware, so for it to see the correct directory name with multibyte character paths, the matching locale must be set using the setlocale() function.

Note:

Since PHP 4.3.0, you will often get a slash or a dot back from dirname() in situations where the older functionality would have given you the empty string.

锟斤拷锟斤拷锟斤拷娣拷锟斤拷浠拷锟斤拷锟斤拷樱锟�

<?php

// PHP 4.3.0 锟斤拷前
dirname('c:/'); // 锟斤拷锟斤拷 '.'

// PHP 4.3.0 锟皆猴拷
dirname('c:/x'); // 锟斤拷锟斤拷 'c:'
dirname('c:/Temp/x'); // 锟斤拷锟斤拷 'c:/Temp'
dirname('/x'); // 锟斤拷锟斤拷 '\'

?>

锟轿硷拷

  • basename() - 锟斤拷锟斤拷路锟斤拷锟叫碉拷锟侥硷拷锟斤拷锟斤拷锟斤拷
  • pathinfo() - 锟斤拷锟斤拷锟侥硷拷路锟斤拷锟斤拷锟斤拷息
  • realpath() - 锟斤拷锟截规范锟斤拷锟侥撅拷锟斤拷路锟斤拷锟斤拷