Hello everyone, This proof-of-concept includes json and sqlite versions of the PHP Manual reference/ section. Check it out:
- http://doc.php.net/downloads/ How it's generated: --------------------- - General notes -- Based on PhD_IDE -- A script builds the manual 6x a day on docs.php.net (also home of doc.php.net) -- The json/sqlite builds build via the same cronjob -- The build script is managed using a Makefile -- These builds use phd/trunk and phpdoc/*/trunk -- php -dmemory_limit=1024M render.php -P IDE -d .manual.xml -f funclist -f xml -f sqlite - sqlite -- mv -f output/ide-sqlite.sqlite www/downloads/sqlite/php_manual_$(@F).sqlite - json -- php -dmemory_limit=1024M gen-json.php -l $(@F) -- This creates json/php_manual_$lang.json -- Script based on: doc-base/scripts/gen-ide-json.php Hopefully this provides a rough idea. The sqlite option is new (kudos to Moacir) so we'll refine that, and then generate other formats (including json) using it. The sqlite version includes all known reference information, and will be a good base for future doc QA tools and stats. E.g., find all 5.3.0+ changelog entries, find non-initialized optional params, find most common seealso links, php -l examples and create unit tests, find X, create func lookup API at php.net, .... Moacir is adding non-reference support so one day these (or other) sqlite files will contain non-reference material (e.g., $_SERVER, PHP_EOL, elseif) but this is not trivial. tl;dr: PhD_IDE is doing stuff, and should be renamed to PhD_Awesome :) Regards, Philip