www.gusucode.com > CKFinder 文件管理器PHP版 v3.0源码程序 > code/core/connector/php/vendor/league/flysystem/src/Adapter/AbstractAdapter.php
<?php namespace League\Flysystem\Adapter; use League\Flysystem\AdapterInterface; abstract class AbstractAdapter implements AdapterInterface { /** * @var string path prefix */ protected $pathPrefix; /** * @var string */ protected $pathSeparator = '/'; /** * Set the path prefix. * * @param string $prefix * * @return self */ public function setPathPrefix($prefix) { $is_empty = empty($prefix); if (! $is_empty) { $prefix = rtrim($prefix, $this->pathSeparator).$this->pathSeparator; } $this->pathPrefix = $is_empty ? null : $prefix; } /** * Get the path prefix. * * @return string path prefix */ public function getPathPrefix() { return $this->pathPrefix; } /** * Prefix a path. * * @param string $path * * @return string prefixed path */ public function applyPathPrefix($path) { $path = ltrim($path, '\\/'); if (strlen($path) === 0) { return $this->getPathPrefix() ?: ''; } if ($prefix = $this->getPathPrefix()) { $path = $prefix.$path; } return $path; } /** * Remove a path prefix. * * @param string $path * * @return string path without the prefix */ public function removePathPrefix($path) { $pathPrefix = $this->getPathPrefix(); if ($pathPrefix === null) { return $path; } return substr($path, strlen($pathPrefix)); } }