FFI::cast
执行C类型转换
PHP 7.4.0及以上版本
FFI::cast 是 PHP FFI 扩展中的一个方法,用于将一个已知的原生类型(如C语言结构体或指针)转换为目标类型。这在处理C语言库与PHP之间的交互时非常有用。
FFI::cast(string $type, mixed $value): mixed
返回转换后的值,类型为指定的目标类型。
假设我们需要将一个整数值转换为C语言的“long”类型:
在这个示例中,我们将PHP的整数值转换为C语言的“long”类型,接着通过FFI库将其传递给C函数。
<?php $ffi = FFI::cdef("long foo(long x);", "libmylib.so"); $long_value = FFI::cast("long", 42); $result = $ffi->foo($long_value); echo $result; ?>