我正在尝试为用于 Minecraft 的 server.properties 文件创建某种 GUI,该文件的布局如下所示;
level-name: world
server-ip: 123.123.123
该文件还可以在单行上包含 ##properties.file 等内容,这可能会增加混乱
所以基本上我需要一种将其拆分为可读格式的方法
像这样的东西应该适合你:
$file_path = '/some/path/to/properties/file.properties';
$lines = explode("\n", trim(file_get_contents($file_path)));
$properties = array();
foreach ($lines as $line) {
$line = trim($line);
if (!$line || substr($line, 0, 1) == '#') // skip empty lines and comments
continue;
if (false !== ($pos = strpos($line, ':'))) {
$properties[trim(substr($line, 0, $pos))] = trim(substr($line, $pos + 1));
}
}
print_r($properties);
// -> Array
// -> (
// -> [level-name] => world
// -> [server-ip] => 123.123.123
// -> )