C · C++ · PHP extension · native ABI

GetBible Sword PHP Extension

A native PHP extension exposing the released getBibleSword C ABI through streamed PHP APIs without subprocess startup or an ambient SWORD shared-library dependency.

Reproducible native-integration engineering
Role
Principal architect, native-integration engineer and maintainer
Evidence
2 direct public links
  • C
  • C++
  • PHP extension APIs
  • Zend
  • Autotools
  • CMake
  • PIE
  • PHPT

Purpose and value

Why this system exists

The extension turns a native C/C++ engine into a deterministic, packageable PHP boundary while preserving ABI separation, failure visibility and reproducible evidence.

Engineering role

Principal architect, native-integration engineer and maintainer

System structure

Architecture

  1. 01

    Zend extension code binds to the stable getBibleSword C ABI rather than the C++ implementation ABI.

  2. 02

    Streamed PHP APIs preserve line-oriented NDJSON behaviour without subprocess overhead.

  3. 03

    Native dependencies are pinned and built through reproducible packaging paths.

  4. 04

    Extension packaging, installation and runtime validation are treated as one release boundary.

Boundaries

Principal interfaces

Zend/PHP extension functions and streamed PHP APIs
Released getBibleSword C ABI
PIE and native package build surfaces
SWORD modules installed on the host

Judgement

Engineering decisions

Bind PHP to the stable C ABI so language integration is insulated from C++ ABI changes.

Avoid ambient shared-library assumptions by pinning and packaging native dependencies.

Use PHPT and golden evidence to validate behaviour at the actual PHP boundary.

Confidence model

Delivery, validation, and maintenance

  • 41-commit reviewed history
  • PHPT extension tests and deterministic golden evidence
  • Pinned native dependencies and reproducible builds
  • Explicit ABI and package-release boundaries

Direct sources

Inspect the evidence

Current verified scope

41 commits in the exact reviewed history, including C/Zend integration, PIE packaging, PHPT tests, pinned native dependencies and reproducible golden evidence.

Interpretation boundary

The extension exposes the released ABI and does not claim unimplemented network or module-management operations.

Source reviewed to 2026-07-29

Rapid navigation

Go to

navigate Enter open