хостить на своем сервере и не давать доступа к коду.
Все остальное ломается.
Распишу подробнее.
1) простейший уровень защиты
где-то в php коде у Вас проверка
if(!validLicense()){
die('все кина не будет');
}
ломается в 1 байт
2) Вы навернули на этот кусок кучу преобразований, но чтобы исполнить его в коде будет eval() или его менее
известные аналоги.
Искать чуть-чуть сложнее ;)
3) Вы завернули проверку в кучу функций и пока лицензия работает, результат один, кончилась
началась лажа, например сумма заказа рвется на пару копеек. Поздравляю, на Вас заведут уголовное
дело.
4) Вспоминаем что PHP это компилирующий интерпретатор.
И на исполнение можно подсунуть зашифрованный P-код. Так работают всякие ионкубы.
Взлом становиться делом избранных, при условии, что Вы купили средство защиты последней версии,
для которой в паблике нет рекомпилера. Ваши коды взломает спец за 1000$, а не школьник.
Что можно все таки сделать?
Пойти по пути прикормленного комьюнити (партнерские скидки) и говнокод в котором тот, кто может снять защиту, ни за какие деньги не согласиться копаться.