FFI::cast

(PHP 7 >= 7.4.0, PHP 8)

FFI::cast β€” ΠŸΠ΅Ρ€Π΅Ρ‚Π²ΠΎΡ€ΡŽΡ” Ρ‚ΠΈΠΏ C

Опис

public static FFI::cast(FFI\CType|string $type, FFI\CData|int|float|bool|null &$ptr): ?FFI\CData
public FFI::cast(FFI\CType|string $type, FFI\CData|int|float|bool|null &$ptr): ?FFI\CData

FFI::cast() ΡΡ‚Π²ΠΎΡ€ΡŽΡ” Π½ΠΎΠ²ΠΈΠΉ ΠΎΠ±'Ρ”ΠΊΡ‚ класу FFI\CDataΡ‰ΠΎ Π²ΠΊΠ°Π·ΡƒΡ” Π½Π° Ρ‚Ρƒ саму структуру C, Π°Π»Π΅ асоційований Π· Ρ–Π½ΡˆΠΈΠΌ Ρ‚ΠΈΠΏΠΎΠΌ. ΠžΡ‚Ρ€ΠΈΠΌΠ°Π½ΠΈΠΉ ΠΎΠ±'Ρ”ΠΊΡ‚ Π½Π΅ стає власником Π΄Π°Π½ΠΈΡ…, Ρ‚ΠΎΠΌΡƒ Π²ΠΈΡ…Ρ–Π΄Π½ΠΈΠΉ ΠΏΠΎΠΊΠ°ΠΆΡ‡ΠΈΠΊ ptr ΠΏΠΎΠ²ΠΈΠ½Π΅Π½ Π·Π°Π»ΠΈΡˆΠ°Ρ‚ΠΈΡΡ ΠΆΠΈΠ²ΠΈΠΌ довшС Π·Π° ΠΎΡ‚Ρ€ΠΈΠΌΠ°Π½ΠΈΠΉ ΠΎΠ±'Ρ”ΠΊΡ‚. Π’ΠΈΠΏ C ΠΏΠΎΠ²ΠΈΠ½Π΅Π½ Π±ΡƒΡ‚ΠΈ Π·Π°Π΄Π°Π½ΠΈΠΉ як рядок, Ρ‰ΠΎ ΠΌΡ–ΡΡ‚ΠΈΡ‚ΡŒ Ρ–ΠΌ'я Π±ΡƒΠ΄ΡŒ-якого ΠΊΠΎΡ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΡƒ, Π°Π±ΠΎ як ΠΎΠ±'Ρ”ΠΊΡ‚ FFI\CType. Π―ΠΊΡ‰ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²ΠΈΠΊΠ»ΠΈΠΊΠ°Ρ”Ρ‚ΡŒΡΡ статично, ΠΌΠΎΠΆΠ½Π° використовувати лишС Π²ΠΈΠ·Π½Π°Ρ‡Π΅Π½Ρ– Ρ–ΠΌΠ΅Π½Π° Ρ‚ΠΈΠΏΡ–Π² Π— (Π½Π°ΠΏΡ€ΠΈΠΊΠ»Π°Π΄, int char, Etc.); якщо ΠΌΠ΅Ρ‚ΠΎΠ΄ Π²ΠΈΠΊΠ»ΠΈΠΊΠ°Ρ”Ρ‚ΡŒΡΡ як ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΎΠ±'Ρ”ΠΊΡ‚Π°, Ρ‚ΠΎ допустимі Π±ΡƒΠ΄ΡŒ-які ΠΏΠ΅Π²Π½Ρ– ΠΉΠΎΠΌΡƒ Ρ‚ΠΈΠΏΠΈ.

Бписок ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ–Π²

type

Рядок Π· Ρ–ΠΌ'ям Ρ‚ΠΈΠΏΡƒ Π‘ Π°Π±ΠΎ ΠΎΠ±'Ρ”ΠΊΡ‚ класу FFI\CType

ptr

ДСскриптор ΠΏΠΎΠΊΠ°ΠΆΡ‡ΠΈΠΊΠ° структуру Π΄Π°Π½ΠΈΡ… Π—.

ЗначСння, Ρ‰ΠΎ ΠΏΠΎΠ²Π΅Ρ€Ρ‚Π°ΡŽΡ‚ΡŒΡΡ

ΠŸΠΎΠ²Π΅Ρ€Ρ‚Π°Ρ” Π½ΠΎΠ²ΠΈΠΉ ΠΎΠ±'Ρ”ΠΊΡ‚ FFI\CData