DirectoryIterator::isLink()
(PHP 5,PHP 7)
Determine if current DirectoryIterator item is a symbolic link
说明
public DirectoryIterator::isLink(void) : bool
Determines if the currentDirectoryIteratoritem is a symbolic link.
参数
此函数没有参数。
返回值
ReturnsTRUEif the item is a symbolic link,otherwiseFALSE
范例
Example#1 ADirectoryIterator::isLink()example
This example contains a recursive function for removing a directory tree.
<?php
/**
 * This function will recursively delete all files in the given path, without
 * following symlinks.
 * 
 * @param string $path Path to the directory to remove.
 */
function removeDir($path) {
    $dir = new DirectoryIterator($path);
    foreach ($dir as $fileinfo) {
        if ($fileinfo->isFile() || $fileinfo->isLink()) {
            unlink($fileinfo->getPathName());
        } elseif (!$fileinfo->isDot() && $fileinfo->isDir()) {
            removeDir($fileinfo->getPathName());
        }
    }
    rmdir($path);
}
removeDir('foo');
?>
参见
- DirectoryIterator::getType() Determine the type of the current DirectoryIterator item
- DirectoryIterator::isDir() Determine if current DirectoryIterator item is a directory
- DirectoryIterator::isDot() Determine if current DirectoryIterator item is'.'or'..'
- DirectoryIterator::isFile() Determine if current DirectoryIterator item is a regular file
