[thelist] managing php include dependencies?
Ivo
evolt-thelist at sinchi.org
Wed Apr 11 11:36:11 CDT 2007
Hello all,
I am mystified by why a php app recently broke. The code changes
that lead up to the breakage were minor and unrelated.
The behavior I am seeing is that constants defined in an initial
configuration file are no longer defined in deeper includes. I echo
statements to the error_log noting whether a constant defined in the configuration is
available in subsequent includes.
I have been using require_once & include_once liberaly to add the
configuration file wherever necessary. This means in some
code paths the include_once is called more than once but the echoed
statements in the configuration shows that it is parsed only once.
The log looks like this:
In status.html: constant not yet set TEST_CONSTANT is: TEST_CONSTANT
In configuration.php: set constant TEST_CONSTANT to: "**a test string**"
In status.html: set constant TEST_CONSTANT is: "**a test string**"
In selector.php: constant TEST_CONSTANT is: **a test string**
In logger.php" constant TEST_CONSTANT is: TEST_CONSTANT
--
status.html, selector.php & logger.php use include_once('configuration.php')
The constant in question is not getting redefined (not explicitly
anyways). Same thing happens in all constants defined in configuration.php.
What could be causing this? Am I using include_once on this file too much?
A code path that hits include_once on the config only twice doesnt show
this problem. In the code path logged above all files include_once the
configuration.
Thank you,
Ivo
More information about the thelist
mailing list