Re: define() or $variable for application settings?
| From: | Dan Baker | Date: | Thu, 09 Feb 2006 17:00:41 +0000 |
| Subject: | Re: define() or $variable for application settings? | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-230169@lists.php.net to get a copy of this message | ||
>"Matt Arnilo S. Baluyos (Mailing Lists)" <matt.baluyos.lists@gmail.com>
>wrote in message
>
>I have a config.inc.php file which basically contains all the
>configuration info that the applications needs (directory/file
>locations, database credentials, etc). The information there is set
>using the define() function.
>
>However, I've seen some open-source projects which either use
>$variables or associative arrays to save the values.
>
>My application works pretty fine but I'd like to solicit opinions from
>everyone on what they are using in this case. Also, I have plans of
>putting up a sort of coding guidelines for the company so it might
>help to have other opinions on this one.
Another option you can use is to create a "Config" class, and place all your
configuration state in it. This is probably the slowest, but easy to code
with.
class Config
{
function Username()
{
return "Snoopy";
}
function Password()
{
return "Secret";
}
};
This class is accessible anywhere, and your newer editors assist you -- type
"Config::" and you get a list of all your available configuration values.
It also makes it easy to have a configuration value that depends on state
(like "Debug", depends on which machine or folder it is running from).
I also have a class called "Settings" that are user-configurable within the
website admin page. All settings are placed inside a table, and the user
can monkey with them at there will. Settings::GetValue("Color") returns the
user-defined value from the table.
Just some thoughts
DanB