Wednesday, September 17, 2008
Reason #13 I hate PHP
I'm making sure that the various branches of “Project: Leaflet” are consistent when I notice that
configuration.php
, which allows one to change various settings,
is not displaying at all. There are no errors, just a blank webpage.
Usually, I just run the page at the command line to see what might be
up:
[spc]XXXXXXXXX:~/projects/nlm/htdocs/nlm>php configuration.php Content-type: text/html X-Powered-By: PHP/4.3.9 [spc]XXXXXXXXX:~/projects/nlm/htdocs/nlm>
Okay, nothing there. Let's see if there's an option to PHP to tell me more:
[spc]XXXXXXXXX:~/projects/nlm/htdocs/nlm>php -h
Usage: php [-q] [-h] [-s] [-v] [-i] [-f <file>]
php <file> [args...]
-a Run interactively
-C Do not chdir to the script's directory
-c <path>|<file> Look for php.ini file in this directory
-n No php.ini file will be used
-d foo[=bar] Define INI entry foo with value 'bar'
-e Generate extended information for debugger/profiler
-f <file> Parse <file>. Implies '-q'
-h This help
-i PHP information
-l Syntax check only (lint)
-m Show compiled in modules
-q Quiet-mode. Suppress HTTP Header output.
-s Display colour syntax highlighted source.
-v Version number
-w Display source with stripped comments and whitespace.
-z <file> Load Zend extension <file>.
Hmm … that “lint” option seems promising. Let's try that.
[spc]XXXXXXXXX:~/projects/nlm/htdocs/nlm>php -l configuration.php Errors parsing configuration.php [spc]XXXXXXXXX:~/projects/nlm/htdocs/nlm>
Well, that was spectacularly informative. Why even bother with the option if you aren't going to give any useful information?
Sigh.