定制 pointybeard/helpers-functions-paths 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

pointybeard/helpers-functions-paths

最新稳定版本:1.1.0.1

Composer 安装命令:

composer require pointybeard/helpers-functions-paths

包简介

A collection of helpful functions related to paths, directories, and files names

README 文档

README

A collection of helpful functions related to paths, directories, and files names

Installation

This library is installed via Composer. To install, use composer require pointybeard/helpers-functions-paths or add "pointybeard/helpers-functions-paths": "~1.0" to your composer.json file.

And run composer to update your dependencies:

$ curl -s http://getcomposer.org/installer | php
$ php composer.phar update

Requirements

There are no particuar requirements for this library other than PHP 7.4 or greater.

To include all the PHP Helpers packages on your project, use composer require pointybeard/helpers or add "pointybeard/helpers": "~1.0" to your composer file.

Usage

This library is a collection of helpful functions related to paths, directories, and files names. They are included by the vendor autoloader automatically. The functions have a namespace of pointybeard\Helpers\Functions\Paths

The following functions are provided:

  • is_path_absolute(string $path) : bool
  • get_relative_path(string $from, string $to, bool $strict = true): string

Example usage:

<?php

include __DIR__ . '/vendor/autoload.php';

use pointybeard\Helpers\Functions\Paths;

var_dump(Paths\is_path_absolute('/etc/apache2/sites-enabled/mysite.conf'));
// bool(true)

var_dump(Paths\is_path_absolute(getcwd() . '/../../potato.json'));
// bool(false)

var_dump(Paths\is_path_absolute('./potato.json'));
// bool(false)

var_dump(Paths\is_path_absolute('/var/www/mysite/assets/json/../json/potato.json'));
// bool(false)

var_dump(Paths\get_relative_path(getcwd(), getcwd()));
// string(1) "."

var_dump(Paths\get_relative_path("/var/www/banana/", "/etc/logs/blah", false));
// string(22) "../../../etc/logs/blah"

var_dump(Paths\get_relative_path(getcwd(), getcwd() . '/some/sub/folder/path'));
// string(22) "./some/sub/folder/path"

var_dump(Paths\get_relative_path('/var/www/mysite', '/var/www/someothersite'));
// string(16) "../someothersite"

var_dump(Paths\get_relative_path('/var/www/mysite/docs/index/files', '/var/www/someothersite/docs/index/files'));
// string(42) "../../../../someothersite/docs/index/files"

var_dump(Paths\get_relative_path('/var/www/mywebsite.com/lib/extensions/template/data-sources', '/var/www/mywebsite.com/lib/extensions/template/src/Includes/datasource'));
// string(26) "../src/Includes/datasource"

try{
    Paths\get_relative_path('/var/www/mysite', '../../nonexistent');
} catch (\Exception $ex) {
    var_dump('ERROR! returned: ' . $ex->getMessage());
}
// string(119) "ERROR! returned: path ../../nonexistent is relative and does not exist! Make sure path exists (or set $strict to false)"

/** Same thing again, but this time with strict checking turned off **/
try{
    Paths\get_relative_path('/var/www/mysite', '../../nonexistent', false);
} catch (\Exception $ex) {
    var_dump('ERROR! returned: ' . $ex->getMessage());
}
// string(84) "ERROR! returned: Both $from and $to paths must be absolute when $strict is disabled!"

Support

If you believe you have found a bug, please report it using the GitHub issue tracker, or better yet, fork the library and submit a pull request.

Contributing

We encourage you to contribute to this project. Please check out the Contributing documentation for guidelines about how to get involved.

Author

License

"PHP Helpers: Path Functions" is released under the MIT License.

统计信息

  • 总下载量: 4.5k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 4
  • 依赖项目数: 3
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2019-05-20