ffi/work-directory
最新稳定版本:1.0.0
Composer 安装命令:
composer require ffi/work-directory
包简介
PHP library for interact with working directory
README 文档
README
In the case that during the loading of a binary (like *.so, *.dylib or *.dll)
through FFI it depends on some other binary module, then errors may occur if the
first one and dependent libraries are in different directories, like:
// - bin/ // - main.dll // - other/ // - dependency.dll $ffi = \FFI::cdef('...', __DIR__ . '/bin/main.dll'); // Error like "can not load ..." // - In this case, an error occurs because the specified // dependency ("dependency.dll") could not be found in "bin" // or working directory.
This library allows you to load similar dependencies:
// Use "bin/other" directory for dependencies. \FFI\WorkDirectory\WorkDirectory::set(__DIR__ . '/bin/other'); // $ffi = \FFI::cdef('...', __DIR__ . '/bin/main.dll');
You can also use the built-in chdir function for such operations, however it will only work in case of a Non-Thread Safe PHP build (see remark).
Requirements
- PHP >= 7.4
Installation
Library is available as composer repository and can be installed using the following command in a root of your project.
$ composer require ffi/work-directory
Usage
Get Current Work Directory
$directory = \FFI\WorkDirectory\WorkDirectory::get(); if ($directory !== null) { echo 'CWD is: ' . $directory; }
Update Current Work Directory
Getting the full path to the library.
$directory = __DIR__ . '/path/to/directory'; if (\FFI\WorkDirectory\WorkDirectory::set($directory)) { echo 'CWD has been updated to: ' . $directory; }
统计信息
- 总下载量: 4.17k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 1
- 依赖项目数: 5
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2023-08-09