275 lines
5.4 KiB
PHP
275 lines
5.4 KiB
PHP
<?php
|
|
|
|
namespace Nextend\Framework\Filesystem;
|
|
|
|
use Nextend\Framework\Filesystem\Joomla\JoomlaFilesystem;
|
|
use Nextend\Framework\Filesystem\WordPress\WordPressFilesystem;
|
|
|
|
class Filesystem {
|
|
|
|
/**
|
|
* @var AbstractPlatformFilesystem
|
|
*/
|
|
private static $platformFilesystem;
|
|
|
|
public function __construct() {
|
|
self::$platformFilesystem = new WordPressFilesystem();
|
|
|
|
self::$platformFilesystem->init();
|
|
}
|
|
|
|
/**
|
|
* @return AbstractPlatformFilesystem
|
|
*/
|
|
public static function get() {
|
|
|
|
return self::$platformFilesystem;
|
|
}
|
|
|
|
public static function getPaths() {
|
|
|
|
return self::$platformFilesystem->getPaths();
|
|
}
|
|
|
|
public static function check($base, $folder) {
|
|
|
|
self::$platformFilesystem->check($base, $folder);
|
|
}
|
|
|
|
public static function measurePermission($testDir) {
|
|
|
|
self::$platformFilesystem->measurePermission($testDir);
|
|
}
|
|
|
|
/**
|
|
* @param $path
|
|
*
|
|
* @return string
|
|
*/
|
|
public static function toLinux($path) {
|
|
|
|
return self::$platformFilesystem->toLinux($path);
|
|
}
|
|
|
|
/**
|
|
* @return string
|
|
*/
|
|
public static function getBasePath() {
|
|
|
|
return self::$platformFilesystem->getBasePath();
|
|
}
|
|
|
|
/**
|
|
* @param $path
|
|
*/
|
|
public static function setBasePath($path) {
|
|
|
|
self::$platformFilesystem->setBasePath($path);
|
|
}
|
|
|
|
public static function getWebCachePath() {
|
|
|
|
return self::$platformFilesystem->getWebCachePath();
|
|
}
|
|
|
|
public static function getNotWebCachePath() {
|
|
|
|
return self::$platformFilesystem->getNotWebCachePath();
|
|
}
|
|
|
|
/**
|
|
* @param $path
|
|
*
|
|
* @return string
|
|
*/
|
|
public static function pathToAbsoluteURL($path) {
|
|
|
|
return self::$platformFilesystem->pathToAbsoluteURL($path);
|
|
}
|
|
|
|
/**
|
|
* @param $path
|
|
*
|
|
* @return string
|
|
*/
|
|
public static function pathToRelativePath($path) {
|
|
|
|
return self::$platformFilesystem->pathToRelativePath($path);
|
|
}
|
|
|
|
/**
|
|
* @param $path
|
|
*
|
|
* @return string
|
|
*/
|
|
public static function pathToAbsolutePath($path) {
|
|
|
|
return self::$platformFilesystem->pathToAbsolutePath($path);
|
|
}
|
|
|
|
/**
|
|
* @param $url
|
|
*
|
|
* @return string
|
|
*/
|
|
public static function absoluteURLToPath($url) {
|
|
|
|
return self::$platformFilesystem->absoluteURLToPath($url);
|
|
}
|
|
|
|
/**
|
|
* @param $file
|
|
*
|
|
* @return bool
|
|
*/
|
|
public static function fileexists($file) {
|
|
|
|
return self::$platformFilesystem->fileexists($file);
|
|
}
|
|
|
|
/**
|
|
* @param $file
|
|
*
|
|
* @return bool
|
|
*/
|
|
public static function safefileexists($file) {
|
|
|
|
return self::$platformFilesystem->safefileexists($file);
|
|
}
|
|
|
|
/**
|
|
*
|
|
* @param $dir
|
|
*
|
|
* @return array Folder names without trailing slash
|
|
*/
|
|
public static function folders($dir) {
|
|
|
|
return self::$platformFilesystem->folders($dir);
|
|
}
|
|
|
|
/**
|
|
* @param $path
|
|
*
|
|
* @return bool
|
|
*/
|
|
public static function is_writable($path) {
|
|
|
|
return self::$platformFilesystem->is_writable($path);
|
|
}
|
|
|
|
/**
|
|
* @param $path
|
|
*
|
|
* @return bool
|
|
*/
|
|
public static function createFolder($path) {
|
|
|
|
return self::$platformFilesystem->createFolder($path);
|
|
}
|
|
|
|
/**
|
|
* @param $dir
|
|
*
|
|
* @return bool
|
|
*/
|
|
public static function deleteFolder($dir) {
|
|
|
|
return self::$platformFilesystem->deleteFolder($dir);
|
|
}
|
|
|
|
/**
|
|
* @param $path
|
|
*
|
|
* @return bool
|
|
*/
|
|
public static function existsFolder($path) {
|
|
|
|
return self::$platformFilesystem->existsFolder($path);
|
|
}
|
|
|
|
/**
|
|
* @param $path
|
|
*
|
|
* @return array
|
|
*/
|
|
public static function files($path) {
|
|
|
|
return self::$platformFilesystem->files($path);
|
|
}
|
|
|
|
/**
|
|
* @param $path
|
|
*
|
|
* @return bool
|
|
*/
|
|
public static function existsFile($path) {
|
|
|
|
return self::$platformFilesystem->existsFile($path);
|
|
}
|
|
|
|
/**
|
|
* @param $path
|
|
* @param $buffer
|
|
*
|
|
* @return int
|
|
*/
|
|
public static function createFile($path, $buffer) {
|
|
|
|
return self::$platformFilesystem->createFile($path, $buffer);
|
|
}
|
|
|
|
/**
|
|
* @param $path
|
|
*
|
|
* @return string
|
|
*/
|
|
public static function readFile($path) {
|
|
|
|
return self::$platformFilesystem->readFile($path);
|
|
}
|
|
|
|
/**
|
|
* convert dir alias to normal format
|
|
*
|
|
* @param $pathName
|
|
*
|
|
* @return mixed
|
|
*/
|
|
public static function dirFormat($pathName) {
|
|
|
|
return self::$platformFilesystem->dirFormat($pathName);
|
|
}
|
|
|
|
public static function getImagesFolder() {
|
|
|
|
return self::$platformFilesystem->getImagesFolder();
|
|
}
|
|
|
|
public static function realpath($path) {
|
|
|
|
return self::$platformFilesystem->realpath($path);
|
|
}
|
|
|
|
public static function registerTranslate($from, $to) {
|
|
|
|
self::$platformFilesystem->registerTranslate($from, $to);
|
|
}
|
|
|
|
public static function convertToRealDirectorySeparator($path) {
|
|
|
|
return self::$platformFilesystem->convertToRealDirectorySeparator($path);
|
|
}
|
|
|
|
public static function get_temp_dir() {
|
|
|
|
return self::$platformFilesystem->get_temp_dir();
|
|
}
|
|
|
|
public static function tempnam($filename = '', $dir = '') {
|
|
|
|
return self::$platformFilesystem->tempnam($filename = '', $dir = '');
|
|
}
|
|
}
|
|
|
|
new Filesystem(); |