---
title: "TypePHP: компілятор PHP у нативні бінарники від команди Swoole"
url: https://laravelukraine.com/blog/typephp-kompiliator-php-u-nativni-binarniki-vid-komandi-swoole
date: 2026-08-27
source: https://laravel-news.com/typephp-compile-php-native-binaries?utm_medium=feed&utm_source=feedpress.me&utm_campaign=Feed%3A+laravelnews
---

# TypePHP: компілятор PHP у нативні бінарники від команди Swoole

Команда [Swoole](https://github.com/swoole) опублікувала відкритий вихідний код [TypePHP](https://github.com/swoole/typephp) - компілятора, який перетворює PHP-код у нативний машинний код. Альберт Чен (Albert Chen) повідомив про це у соцмережі X, зазначивши, що реліз відбувся раніше запланованого жовтневого терміну.

## Що таке TypePHP

TypePHP - це Ahead-Of-Time (AOT) компілятор, який транслює PHP-код спочатку в C++, а потім у нативний машинний код. На відміну від кешу байт-коду чи віртуальної машини, він не інтерпретує опкоди під час виконання: натомість генерує оптимізовані нативні бінарники, що запускаються безпосередньо на процесорі.

## Ключові особливості

Компілятор зберігає звичний синтаксис PHP і додає інформацію про типи на етапі компіляції. Це дозволяє генерувати швидкий, статично типізований C++-код для критичних ділянок програми (hot paths). 

Динамічні PHP-значення, внутрішні функції, рефлексія та метадані об'єктів продовжують взаємодіяти з Zend-рантаймом через PHPX. Користувацькі функції після компіляції більше не виконуються як Zend-опкоди - вони працюють як нативний машинний код.

## Самокомпіляція на чистому PHP

Особливістю TypePHP є те, що компілятор повністю написаний на PHP і підтримує самокомпіляцію (self-hosting). Бінарник компілятора `tpc` створюється шляхом компіляції власного PHP-коду за допомогою TypePHP. Весь ланцюжок bootstrap-процесу базується на чистому PHP - без жодного C чи C++ коду в самому компіляторі.

Це означає, що TypePHP використовує себе для компіляції власного вихідного коду, демонструючи зрілість і повноцінність рішення.

## Де дізнатися більше

Детальну документацію та додаткову інформацію про проєкт можна знайти на [офіційному сайті TypePHP](https://swoole.com/aot/en). Вихідний код доступний у репозиторії на GitHub.
