ffi / var-dumper
支持 FFI 的 symfony/var-dumper casters 列表
1.0.2
2024-08-14 21:01 UTC
Requires
- php: ^8.1
- symfony/var-dumper: ^5.4|^6.0|^7.0
Requires (Dev)
- phpunit/phpunit: ^9.5
- squizlabs/php_codesniffer: ^3.7
- vimeo/psalm: ^5.4
This package is auto-updated.
Last update: 2024-09-14 21:15:48 UTC
README
此库允许您使用函数 dd()
和 dump()
来转储 FFI 类型。
需求
- PHP >= 8.1
安装
该库作为 composer 仓库提供,您可以在项目的根目录中使用以下命令进行安装。
$ composer require ffi/var-dumper
用法
dump(\FFI::new('struct { float x }')); // // Expected Output: // // struct <anonymous> { // x<float>: 0.0 // } //
不安全访问
某些值可能包含在读取时会导致访问错误的数据。例如,指向“空”的指针。
此类数据被标记为“不安全”,并且只显示第一个元素。如果您想完全显示值,应使用环境变量 VAR_DUMPER_FFI_UNSAFE=1
。
// Create char* with "Hello World!\0" string. $string = \FFI::new('char[13]'); \FFI::memcpy($string, 'Hello World!', 12); $pointer = \FFI::cast('char*', $string); // Dump dump($pointer); // VAR_DUMPER_FFI_UNSAFE=0 // // > char* (unsafe access) { // > +0: "H" // > } // VAR_DUMPER_FFI_UNSAFE=1 // // > b"Hello World!\x00"