Shows short description for file

<< Back

Filename: (14,617 bytes)
Released: 20th January 2008, 3,343 downloads
Category: PHP

DownloadClick to download

README for PHP ManSearch by Sascha 'SieGeL' Pfalz
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

If you have a local copy of the PHP manual stored on your homeserver,
you may miss a possibility to search inside your local manualcopy for
specific functions. At least I was heavily missing such a functionality,
so these very small and tiny php scripts are born.

The phpmansearcher only seeks for PHP functions, not the whole manual, as
this is IMO not neccessary when developing PHP scripts.
If more search is required, feel free to drop me a note and I will add such

I've tried to add the search functionality WITHOUT changing a single bit
of the original manual, so that it can be easily updated without having to
worry about the search system. To achieve this, my PHP Man searcher creates
a frameset which includes in the bottom part the php manual, but provides
a searchmask in the top frame. This way you can easily navigate through
the manual and also search if you wish.

Since V0.21 PHP ManSearch supports only the new PhD manual format that introduced recently, older manual versions won't work anymore!

To install, create a new directory on the machine where the PHP manual is
also stored, but NOT (!) inside the phpmanual directory, else you loose the
ability to easily update the manual.
I would recommend to create a directory called phpmansearch and put the
contents there.

The phpmansearch consists of the following files:


- Disables cache and includes the configfile. Must be included in all
  PHP scripts


- The configurationfile. Here you MUST (!) define where the original
  PHP Manual is stored.


- Builds the frameset and loads the phpmanual index page on inital load.


- HTML code for the search form shown in top frame


- PHP script which performs the actual search


- The file you are currently reading

Before using you must configure first where the original phpmanual is
stored and how to access that. Please open the file inc/phpmansearch.cfg.php
and specify the following variables:

$PHP_MANUAL_DIR = "/html/private/phpmanual";

- PHP_MANUAL_DIR specifies the physical path to the manual directory
  without (!) trailing slash as absolute path!

$PHP_MANUAL_URL = "/phpmanual/";

- PHP_MANUAL_URL specifies the URL to enter to access the manual,
  this parameter must be given INCLUDING trailing slash!

Thats it, now point your browser to the index.php file and the manual should
be shown as usual but have been embedded in a frameset while the top one
should display a small textbox where you can enter your searchstrings.

The search works by opening the file "indexes.html" from the original
PHP Manual, parsing the whole file with regular expressions to get a list of
all functions. Next this list is searched with both StriStr() and soundex()
to have also similiar functions to be found.
All found functions are listed with a link to the appropiate HTML page. The
links are constructed in a way that the Searching still works (they all load
inside the MAIN frame).

If you wish to have a complete alphabetical sorted list of all available
functions, simply enter an empty searchstring, this results in displaying the
file "indexes.html" completly without parsing the file.

As I'm a bit lazy the searching uses a lot of memory (mainly the size of the
indexes.html * 2, resulting in ~1,5MB of memory) and also there are
almost no error checkings in it.
I've coded all parts in less than 1 hour, so if you find anything strange,
have suggestions or improvements feel free to contact me (see end of README).
I decided to release this to the public in case other developers may have any
use of it. If not just don't install it :)

To contact me please use on one of the methods listed below:

   ICQ: 9691810

Normally I answer to emails in less than 8 hours, if this is not the case I'm
either very busy or your mail was killed by a spam filter, in this case resend
it plz.

See file CHANGELOG for history on that project.

<< Back