FFI::new

(PHP 7 >= 7.4.0, PHP 8)

FFI::new — C 데이터 구조를 생성합니다.


설명

ublic static FFI::new(FFI\CType|string $type, bool $owned = true, bool $persistent = false): ?FFI\CData

public FFI::new(FFI\CType|string $type, bool $owned = true, bool $persistent = false): ?FFI\CData

주어진 C 유형의 기본 데이터 구조를 생성합니다. 이 메서드가 정적으로 호출되면 미리 정의된 C 유형 이름(예: int, char 등)만 사용해야 합니다. 메소드가 인스턴스 메소드로 호출되면 인스턴스에 대해 선언된 모든 유형이 허용됩니다.


매개변수

type
type은 문자열로 유효한 C 선언이거나 이미 생성된 FFI\CType의 인스턴스입니다.
owned
소유(즉, 관리) 또는 비관리 데이터를 생성할지 여부. 관리되는 데이터는 반환된 FFI\CData 개체와 함께 존재하며 해당 개체에 대한 마지막 참조가 일반 PHP 참조 계산 또는 GC에 의해 해제될 때 해제됩니다. 관리되지 않는 데이터는 더 이상 필요하지 않을 때 FFI::free()를 호출하여 해제해야 합니다.
persistent
C 데이터 구조를 시스템 힙(malloc() 사용) 또는 PHP 요청 힙(emalloc() 사용)에 영구적으로 할당할지 여부.

반환 값

새로 생성된 FFI\CData 개체를 반환하거나 실패 시 null을 반환합니다.