PHPackages                             chrismou/phpdocs-to-db - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. chrismou/phpdocs-to-db

ActiveLibrary

chrismou/phpdocs-to-db
======================

App for creating an sqlite PHP function database using the PHP documentation SVN repository

06PHP

Since Dec 18Pushed 10y ago1 watchersCompare

[ Source](https://github.com/chrismou/phpdocs-to-db)[ Packagist](https://packagist.org/packages/chrismou/phpdocs-to-db)[ RSS](/packages/chrismou-phpdocs-to-db/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

Create an sqlite DB containing PHP function documentation
=========================================================

[](#create-an-sqlite-db-containing-php-function-documentation)

A work-in-progress app for creating an sqlite PHP function database using a checkout of the PHP documentation SVN repository.

This is a really early doors version - written in a rush for use in a seperate project - which I've decided to open source because - well, why not? :-)

There's a lot more work to do, so if you come across any issues/limitations then there's a good chance I already know about it and plan to fix/improve it in a later release.

Also, expect the DB layout to change - adding multiple language support will almost definitely require this. There's also a few hacky workarounds in the code that I had to add in a hurry to get the DB generated quickly - expect them to be fixed in a later version.

Install
-------

[](#install)

The recommended method of installation is [through composer](http://getcomposer.org).

```
{
    "require": {
        "chrismou/phpdocs-to-db": "dev-master"
    }
}
```

Next you need to grab a copy of the PHP docs from their SVN repository. As I've not added full language support yet, you need to choose what language you want to use now.

For this example, you'll need subversion installed. To set yourself up to create an English language PHP doc DB, get into the project root and run the following command:

```
svn checkout http://svn.php.net/repository/phpdoc/en/trunk/ data/

```

Expect this to take a while, as you're grabbing 150+ MB of XML files. You can switch it to use other languages by switching "en" in the URL (open \[\] in a browser to see the full list of supported languages).

Then take the phpdoc\_skeleton.db file in the build/ directory and create a copy in the same directory, calling it phpdoc.db (DB creation will be automated in a future release).

Now open a terminal, get into the project root and run the following command:

```
php run.php phpdocdb:create

```

\##s Future

- Automatic DB creation (currently requires the included sqlite skeleton db)
- Support for auto checkout/update using the PHP SVN module
- Support for language selection (or creation of a multi-language DB)
- Support for multiple DB providers
- Option to select whether to create a multi-table relational DB or a single-table DB (ie, for if filesize is an issue) \*\* Including being able to specify whether to include full variable definitions, etc

License
-------

[](#license)

Released under the MIT License. See [LICENSE](LICENSE.md)s

###  Health Score

20

—

LowBetter than 14% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/98e0798db43673fb89fe589cbb45fb4c6547d3bdbe76d7efa30d96f24ffc677e?d=identicon)[chrismou](/maintainers/chrismou)

---

Top Contributors

[![chrismou](https://avatars.githubusercontent.com/u/319883?v=4)](https://github.com/chrismou "chrismou (6 commits)")

### Embed Badge

![Health badge](/badges/chrismou-phpdocs-to-db/health.svg)

```
[![Health](https://phpackages.com/badges/chrismou-phpdocs-to-db/health.svg)](https://phpackages.com/packages/chrismou-phpdocs-to-db)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
