An alternative for PHP full text search is the PHP DuckDB client [1], and using DuckDB with the Full-Text Search extension [2]. It also stores everything on the local file system and can scale to millions of records.
Thanks for the suggestion. DuckDB is a great tool, but it requires installing a native extension, which is exactly the scenario php-fts is designed to avoid. The primary target is shared hosting (OVH, Infomaniak, o2switch…) where you have no control over installed extensions. If you can install DuckDB, you can probably also run Meilisearch or Typesense, which are purpose-built for search.