当前位置: 首页>>代码示例>>PHP>>正文


PHP SplFileInfo::isLink方法代码示例

本文整理汇总了PHP中Symfony\Component\Finder\SplFileInfo::isLink方法的典型用法代码示例。如果您正苦于以下问题:PHP SplFileInfo::isLink方法的具体用法?PHP SplFileInfo::isLink怎么用?PHP SplFileInfo::isLink使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Symfony\Component\Finder\SplFileInfo的用法示例。


在下文中一共展示了SplFileInfo::isLink方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: isLink

 public function isLink()
 {
     return $this->fileInfo->isLink();
 }
开发者ID:phramz,项目名称:doctrine-annotation-scanner,代码行数:4,代码来源:ClassFileInfo.php

示例2: moveFile

 /**
  * Move a single file or folder.
  *
  * @param SplFileInfo $file      The file to move.
  *
  * @param string      $targetDir The destination directory.
  *
  * @param bool        $logging   Flag determining if actions shall get logged.
  *
  * @param IOInterface $ioHandler The io handler to log to.
  *
  * @return void
  *
  * @throws \RuntimeException When an unknown file type has been encountered.
  */
 private function moveFile(SplFileInfo $file, $targetDir, $logging, $ioHandler)
 {
     $pathName = $file->getPathname();
     $destinationFile = str_replace($this->tempDir, $targetDir, $pathName);
     // Symlink must(!) be handled first as the isDir() and isFile() checks return true for symlinks.
     if ($file->isLink()) {
         $target = $file->getLinkTarget();
         if ($logging) {
             $ioHandler->write(sprintf('link %s to %s', $target, $destinationFile));
         }
         symlink($target, $destinationFile);
         unlink($pathName);
         return;
     }
     if ($file->isDir()) {
         $permissions = substr(decoct(fileperms($pathName)), 1);
         $this->folders[] = $pathName;
         if (!is_dir($destinationFile)) {
             if ($logging) {
                 $ioHandler->write(sprintf('mkdir %s (permissions: %s)', $pathName, $permissions));
             }
             mkdir($destinationFile, octdec($permissions), true);
         }
         return;
     }
     if ($file->isFile()) {
         $permissions = substr(decoct(fileperms($pathName)), 1);
         if ($logging) {
             $ioHandler->write(sprintf('move %s to %s (permissions: %s)', $pathName, $destinationFile, $permissions));
         }
         copy($pathName, $destinationFile);
         chmod($destinationFile, octdec($permissions));
         unlink($pathName);
         return;
     }
     throw new \RuntimeException(sprintf('Unknown file of type %s encountered for %s', filetype($pathName), $pathName));
 }
开发者ID:tenside,项目名称:core,代码行数:52,代码来源:InstallTask.php

示例3: copy

 /**
  * Copy a path to destination, check if file,directory or link
  * @param string $source      The Source File
  * @param string $destination The Destination File
  * @return boolean
  */
 public function copy(\Symfony\Component\Finder\SplFileInfo $source, $destination)
 {
     $new_path = $destination . DIRECTORY_SEPARATOR . $source->getRelativePathname();
     #Test if Source is a link
     if ($source->isLink()) {
         return symlink($source, $new_path);
     }
     # Test if source is a directory
     if ($source->isDir()) {
         return mkdir($new_path);
     }
     #Test if Source is a file
     if ($source->isFile()) {
         return copy($source, $new_path);
     }
     return FALSE;
 }
开发者ID:icomefromthenet,项目名称:faker,代码行数:23,代码来源:Project.php


注:本文中的Symfony\Component\Finder\SplFileInfo::isLink方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。