I have a file called settings.php that has all of the settings that the software uses. The problem is that I need users to be able to change the config without editing the file. I know I could do this with preg_replace
but with dynamic settings like 'Board name' it would get tricky. I've tried a few things that didn't seem to work. I now you're not going to write the code for me, I just need a starting point.
Settings File
$settings = array (
'home_display'=>'home',
'db_host'=>'localhost',
'db_user'=>'root',
'db_password'=>'',
'db'=>'',
'login_enabled'=>true,
'signup_enabled'=>true,
'site_name'=>'Cheesecake Portal',
'b_url'=>'beta.cheesecakebb.org',
'b_email'=>'symbiote@cheesecakeb.org',
'board_enabled'=>true
);
The idea i have is to rewrite the file on the fly, even if i think this isnt the best way, it's a way.
if( file_exists($mySettingsFile) ){
include($mySettingsFile);
}
else{
$settings = array ( // the default settings array
'home_display'=>'home',
'db_host'=>'localhost',
'db_user'=>'root',
'db_password'=>'',
'db'=>'',
'login_enabled'=>true,
'signup_enabled'=>true,
'site_name'=>'Cheesecake Portal',
'b_url'=>'beta.cheesecakebb.org',
'b_email'=>'symbiote@cheesecakeb.org',
'board_enabled'=>true
);
}
// modifiy your settings here searching the key(s) you want to modify
// then put it in the config file
file_put_contents($mySettingsFile, '<?php '.var_export($settings).' ?>');
I hope this will illustrate my idea good enough to help you.