PHP Conference Japan 2024

C 類型控點

(PHP 7 >= 7.4.0, PHP 8)

簡介

類別概要

final class FFI\CType {
/* 常數 */
public const int TYPE_VOID;
public const int TYPE_FLOAT;
public const int TYPE_DOUBLE;
public const int TYPE_LONGDOUBLE;
公開 常數 整數 TYPE_UINT8;
公開 常數 整數 TYPE_SINT8;
公開 常數 整數 TYPE_UINT16;
公開 常數 整數 TYPE_SINT16;
公開 常數 整數 TYPE_UINT32;
公開 常數 整數 TYPE_SINT32;
公開 常數 整數 TYPE_UINT64;
公開 常數 整數 TYPE_SINT64;
公開 常數 整數 TYPE_ENUM;
公開 常數 整數 TYPE_BOOL;
公開 常數 整數 TYPE_CHAR;
公開 常數 整數 TYPE_POINTER;
公開 常數 整數 TYPE_FUNC;
公開 常數 整數 TYPE_ARRAY;
公開 常數 整數 TYPE_STRUCT;
公開 常數 整數 ATTR_CONST;
公開 常數 整數 ATTR_VARIADIC;
公開 常數 整數 ATTR_VLA;
公開 常數 整數 ATTR_UNION;
公開 常數 整數 ATTR_PACKED;
公開 常數 整數 ATTR_MS_STRUCT;
公開 常數 整數 ATTR_GCC_STRUCT;
公開 常數 整數 ABI_DEFAULT;
公開 常數 整數 ABI_CDECL;
公開 常數 整數 ABI_FASTCALL;
公開 常數 整數 ABI_THISCALL;
公開 常數 整數 ABI_STDCALL;
公開 常數 整數 ABI_PASCAL;
公開 常數 整數 ABI_REGISTER;
公開 常數 整數 ABI_MS;
公開 常數 整數 ABI_SYSV;
公開 常數 整數 ABI_VECTORCALL;
/* 方法 */
公開 取得對齊(): 整數
公開 getArrayLength(): int (整數)
公開 getAttributes(): int (整數)
公開 getEnumKind(): int (整數)
公開 getFuncABI(): int (整數)
公開 getFuncParameterCount(): int (整數)
公開 getFuncParameterType(int $index (整數)): FFI\CType
公開 getKind(): int (整數)
公開 getName(): string (字串)
公開 getSize(): int (整數)
公開 getStructFieldNames(): array (陣列)
公開 getStructFieldOffset(string $name (字串)): int (整數)
公開 getStructFieldType(string $name (字串)): FFI\CType
}

目錄

新增註記

使用者貢獻的註記 1 則註記

scorninpc at php dot net
4 年前
如果您想知道類型是否正確,可以比較 CTypes

\FFI::typeof(\FFI::addr($a)) == \FFI::typeof(\FFI::new("void *"))

CType 需要一些方法,例如 equal() 或 toString(),但是.....
To Top