Documentation online

You can read the documentation online in various languages, even in printer friendly formats.

Tips for Windows users

If you don\'t know how to handle bz2 compressed manuals on Windows, please read our FAQ entry on this subject.

You may also check out the still in progress development of a new CHM format based PHP manual at http://weblabor.hu/php-doc-chm.

File sizes and dates

If you are using a capable browser, the file size and date will show up when you move the mouse above a link. If you cannot view this information, or would like to see all the information, you can click here to see all the file sizes and dates.

'; commonHeader("Download documentation"); // Available formats $formats = array( "Single HTML" => "html.bz2", "Many HTML files" => "tar.bz2", //"PDF" => "pdf.bz2", "PalmPilot DOC" => "doc.pdb", "PalmPilot iSilo" => "isilo.pdb", "Windows HTML Help" => "chm" ); ?>

Download documentation

The PHP manual is available in a selection of languages and formats. Pick a language and format from the table below to start downloading.

Note that the packaged HTML version of the manual (tar.bz2) doesn't contain any directories, so all of the files will be dumped into your current working directory when you expand the archive unless the tool you use does otherwise.

Please note that due to some technical problems, we do not distribute PDF versions of the manual right now.

$extension) { echo " \n"; } ?> $language) { // See if current language is the preferred one if ($langcode == $LANG) { $preflang = TRUE; } else { $preflang = FALSE; } // Reset files array and format counter $files = array(); $formatnum = 0; // Go through all possible manual formats foreach ($formats as $formatname => $extension) { // File named after the language and format exists if (file_exists("distributions/manual/php_manual_$langcode.$extension")) { // Relative file path from here $link_to = "distributions/manual/php_manual_$langcode.$extension"; // Try to get size and changed date $size = @filesize($link_to); $changed = @filemtime($link_to); // Size available, collect information if ($size) { $files[] = array($link_to, (int) ($size/1024), date("j M Y", $changed), $extension); $formatnum++; } // Size is not available, we won't list the file else { $files[] = ''; } } // Unable to find file else { $files[] = ''; } } // At least one format is found for this // language => write out table row if ($formatnum > 0) { // Additional link for special French version of the manual if ($langcode == "fr") { $language .= '
[Special French]'; } // Highlight manual in preferred language if ($preflang) { $bgcolor = "#ffffcc"; } else { $bgcolor = "#eeeeee"; } echo "\n\n"; // Print out a table cell for all formats foreach ($files as $fileinfo) { echo "\n"; } // End table row echo "\n"; } } ?>
  $formatname
$language"; // Missing format if ($fileinfo == '') { echo " "; } // Format found, write out link else { // Start link tag echo "$fileinfo[3]"; // Sizes required to be printed out (URL parameter or preferred language) if ($sizes || $preflang) { echo "
Size: $fileinfo[1]Kb
Date: $fileinfo[2]
"; } } // Quite bad looking code tweak to add a link to the extended CHM (en only!) if ($langcode == "en" && preg_match("!.chm$!", $fileinfo[0])) { echo '
extended chm'; } // End table cell echo "

Documentation howto

The PHP Documentation Team has a documentation howto, including coverage on how to set up a working environment on Unix/Linux/Windows, how to build HTML formatted docs from the XML sources, what conventions to follow when writing documentation, etc. If you are interested in the process, or would like to start/join a translation, you can download the howto. Note, that it is also readable online.