PHP第二次不执行相同的函数
我有一个使用PHP第二次不执行相同的函数,php,Php,我有一个使用Config::save('key',$value)调用的函数 它只重置license变量,似乎跳过了第一个变量。是不是代码出了什么问题,导致它变成这样 如果需要更多的代码,请告诉我,我很乐意提供。当您仅对第一个调用(Config::save('usage\u id','usage\u id'))和第二个调用(Config::save('license','license'))执行变量转储时,您会得到什么回报?它现在更新了吗?bool(true)bool(true)是结果。但它仍然不
Config::save('key',$value)调用的函数代码>
它只重置license
变量,似乎跳过了第一个变量。是不是代码出了什么问题,导致它变成这样
如果需要更多的代码,请告诉我,我很乐意提供。当您仅对第一个调用(Config::save('usage\u id','usage\u id'))和第二个调用(Config::save('license','license'))执行变量转储时,您会得到什么回报?它现在更新了吗?bool(true)bool(true)
是结果。但它仍然不能同时更新两个,只有一个。
public static function save($params, $value)
{
$parts = explode('.', $params);
$count = count($parts);
$mainFile = PANEL_PATH.'/conf.php';
$mainConfig = include $mainFile;
if($count == 1)
{
if(isset($mainConfig[$parts[0]]))
{
$mainConfig[$parts[0]] = $value;
}
}
elseif($count == 2)
{
if(isset($mainConfig[$parts[0]][$parts[1]]))
{
$mainConfig[$parts[0]][$parts[1]] = $value;
}
}
elseif($count == 3)
{
if(isset($mainConfig[$parts[0]][$parts[1]][$parts[2]]))
{
$mainConfig[$parts[0]][$parts[1]][$parts[2]] = $value;
}
}
elseif($count == 4)
{
if(isset($mainConfig[$parts[0]][$parts[1]][$parts[2]][$parts[3]]))
{
$mainConfig[$parts[0]][$parts[1]][$parts[2]][$parts[3]] = $value;
}
}
ob_start();
echo var_export($mainConfig);
$content = ob_get_contents();
ob_end_clean();
$content = str_replace(" ", "\t", $content);
$content = str_replace("\n\tarray (", "array(", $content);
$content = str_replace("\n\t\tarray (", "array(", $content);
$content = str_replace("\n\t\t\tarray (", "array(", $content);
$mainFileHandler = fopen($mainFile, 'w+');
$mainFileWrite = fwrite($mainFileHandler, "<?php\n\nreturn " . $content . ";");
if($mainFileWrite > 0)
{
return true;
}
else
{
return false;
}
fclose($mainFileHandler);
}
<?php
return array (
'name' => '<NAME>',
'license' => '<LICENSE>',
'url' => '<URL>',
'usage_id' => '<USAGE_ID>',
'installed' => '<INSTALLED>'
);
if (Config::save('usage_id', 'USAGE_ID') && Config::save('license', 'LICENSE'))
{
echo "Reset License";
}