-1

我正在尝试为用于 Minecraft 的 server.properties 文件创建某种 GUI,该文件的布局如下所示;

level-name: world
server-ip: 123.123.123

该文件还可以在单​​行上包含 ##properties.file 等内容,这可能会增加混乱

所以基本上我需要一种将其拆分为可读格式的方法

4

1 回答 1

1

像这样的东西应该适合你:

$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
// -> )
于 2013-01-09T23:19:55.713 回答