PHP路径操作类

Wesley13
• 阅读 271

PHP路径操作类,命名方式仿照C#的System.IO.Path类。

<?php
class Path{
    /**
     * 获取指定路径的目录部分
     * */
    public function GetDirectoryName($path){
        return pathinfo($path,PATHINFO_DIRNAME);
    }
    /**
     * 获取指定路径的文件名
     * */
    public static function GetFileName($path){
        return pathinfo($path,PATHINFO_FILENAME);
    }
    /**
     * 获取指定路径的文件名和扩展名
     * */
    public static function GetFileNameWithoutExtension($path){
        return pathinfo($path,PATHINFO_BASENAME);
    }
    /**
     * 获取指定路径的完整真实路径
     * */
    public static function GetFullPath($path){
        return realpath($path);
    }
    /**
     * 获取一个随机文件名
     * */
    public static function GetRandomFileName(){
        return md5(uniqid(uniqid(),true));
    }
    /**
     * 获取唯一临时文件名
     * */
    public static function GetTempFileName(){
        return tempnam(sys_get_temp_dir (),'');
    }
    /**
     * 获取临时目录
     * */
    public static function GetTempPath(){
        return sys_get_temp_dir();
    }
    /**
     * 判断是否存在扩展名
     * */
    public static function HasExtension($path){
        $extension = pathinfo($path,PATHINFO_EXTENSION );
        return empty($extension) === false;
    }
    /***
     * 合并数组中的文件路径
     * */
    public static function Combine(array $paths){
        $path = implode(DIRECTORY_SEPARATOR,array_values($paths));
        $extension = pathinfo($path,PATHINFO_EXTENSION );
        if(empty($extension) === false){
            $path = chop($path,DIRECTORY_SEPARATOR);
        }else{
            $path = $path . DIRECTORY_SEPARATOR;
        }
        return $path;
    }
    public function __toString(){
        return 'Path';
    }
}
?>
点赞
收藏
评论区
推荐文章
blmius blmius
1年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录 问题 用navicat导入数据时,报错: 原因这是因为当前的MySQL不支持datetime为0的情况。 解决修改sql\mode: sql\mode:SQL Mode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。 全局s
陈占占 陈占占
11个月前
PHP 利用confirm删除指定数据库的数据
完整的效果图 方法一a标签href中的是你要删除记录html<a href"PHPtest.php?name1" onclick"return confirm('是否要移除该小说?')" 方法二 下面这个方法是js代码,点击获取id,弹出提示框,确定是否删除,confirm好像可以返回true或者falsejavascript function d
Wesley13 Wesley13
1年前
PHP开发APP接口1——APP接口简介
**第1章** **APP****接口简介** **1、** **APP****接口介绍** l PHP面向对象中的接口:就是用interface定义的抽象类 如: <?php     interface video {         public function getVideos();         publ
Stella981 Stella981
1年前
PHP中的stdClass是什么?
请定义什么是`stdClass` 。 * * * ### #1楼 stdClass是另一个很棒的PHP功能。 您可以创建一个匿名PHP类。 让我们来看一个例子。 $page=new stdClass(); $page->name='Home'; $page->status=1; 现在,您认为您还有另一个类,该类将使
Stella981 Stella981
1年前
Apache服务器的配置——httpd.conf
1、配置根目录 DocumentRoot "C:/www/apache2/htdocs" 2、配置访问的路径  ServerName 127.0.0.1 3、#加载PHP54的模块 LoadModule php5\_module "c:/www/php54/php5apache2\_2.dll" 4、设置解析php文件等  AddType ap
Stella981 Stella981
1年前
Discuz X3.2源码解析 discuz_application类(转自百度)
1. discuz\_application在/source/class/discuz/discuz\_application.php中。 [![Discuz X3.2源码解析 discuz_application类](https://oscimg.oschina.net/oscnet/99b35d79caf70b7c74ad0838d6
Wesley13 Wesley13
1年前
Thinkphp 微信网页授权登录
1,建一个vendor类代码如下 <?php class Wxlogin { # 你自己的 private $app_id = ''; # 也是你自己的 private $app_secret = '';
Wesley13 Wesley13
1年前
PHP创建多级树型结构
<!-- lang: php --> <?php $area = array( array('id'=>1,'pid'=>0,'name'=>'中国') ,array('id'=>5,'pid'=>0,'name'=>'美国') ,array('id'=>2,'pid'=>1,'name'=>'吉林') ,array('id'=>4,'pid'=>2,'n
Wesley13 Wesley13
1年前
MySQL查询按照指定规则排序
1.按照指定(单个)字段排序 select * from table_name order id desc; 2.按照指定(多个)字段排序 select * from table_name order id desc,status desc; 3.按照指定字段和规则排序 selec
Wesley13 Wesley13
1年前
DAOMYSQLI工具类
<?php //DAOMySQLI.class.php //完成对mysql数据库操作,单例模式 //开发类 //1. 定类名 //2. 定成员属性 //3. 定成员方法[查询,dml操作]
Wesley13 Wesley13
1年前
PHP中的NOW()函数
是否有一个PHP函数以与MySQL函数`NOW()`相同的格式返回日期和时间? 我知道如何使用`date()`做到这一点,但是我问是否有一个仅用于此的函数。 例如,返回: 2009-12-01 00:00:00 * * * ### #1楼 使用此功能: function getDatetimeNow() {