International PHP Conference Munich 2024

Введение

Модуль умеет загружать общие библиотеки (.DLL или .so), вызывать C-функции и получать доступ с структурам языка C из PHP без глубокого изучения API модулей Zend и стороннего «промежуточного» языка. Публичный API реализован как единственный класс FFI с набором статических методов (часть из них вызывается динамически) и переопределёнными методами объекта, которые фактически взаимодействуют с данными C.

Предостережение

Модуль FFI довольно опасен, поскольку разрешает взаимодействовать с системой на низком уровне. С модулем FFI должны работать только те разработчики, которые знакомы с языком С и умеют работать с API языка. Чтобы уменьшить риски, модуль запрещают директивой ffi.enable в файле php.ini.

Замечание:

Модуль FFI не делает классический API модулей PHP устаревшим; модуль разработали для взаимодействия с функциями и структурами данных языка C.

Подсказка

Доступ к структурам данных модуля FFI примерно в 2 раза медленнее, чем доступ к объектам и массивам PHP. Поэтому нет повода использовать FFI для ускорения; однако с модулем работают, чтобы сократить потребление памяти.

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top