Introduktion ffi

Från Wiki.linux.se
Hoppa till navigering Hoppa till sök

Introduktion

Denna extension möjliggör inladdning av delade bibliotek (.DLL eller .so), anrop av C-funktioner och åtkomst till C-datastrukturer direkt i PHP, utan att behöva djup kunskap om Zend extension API eller lära sig ett tredje "mellanspråk". Det publika API:et är implementerat som en enda klass, FFI, med flera statiska metoder (vissa kan även anropas dynamiskt), samt överlagrade objektmetoder som hanterar den faktiska interaktionen med C-data.

Varning FFI är farligt, eftersom det möjliggör interaktion med systemet på en mycket låg nivå. FFI-extensionen bör endast användas av utvecklare med god kunskap om C och de C-API:er som används. För att minimera risken kan användningen av FFI API begränsas med php.ini-direktivet ffi.enable.

Notering: FFI-extensionen gör inte det klassiska PHP extension API obsolet; det är endast tillhandahållet för ad-hoc-interaktion med C-funktioner och datastrukturer.

Tips För närvarande är åtkomst till FFI-datastrukturer betydligt långsammare (ungefär två gånger långsammare) än åtkomst till inbyggda PHP-arrayer och objekt. Därför är det oftast inte meningsfullt att använda FFI-extensionen för hastighet; dock kan det vara fördelaktigt att använda det för att minska minnesförbrukningen.

Sidslut

Orginalhemsidan på Engelska

PHP Funktioner Funktionsreferens

Det här är en maskinöversättning av PHP-manualen till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på https://www.linux.se/kontaka-linux-se/

Tack till Datorhjälp.se som har sponsrat Linux.se med webserver.