@john 在没什么干扰字符的情况下,如下:
[global_ip]
10.81.223.142:13306
10.86.92.213:13306
10.81.223.174:13306
[user_pass]
user:logstat
pass:logstat123
[db_name]
db1:db_mfw
db2:db_driserver
$ip = $port = $user = $pass = $db = '';
if ($configContent = trim(file_get_contents(__DIR__ . '/dbconfig.txt'))) {
$itemArray = explode("\n\n", $configContent);
if (!empty($itemArray)) {
foreach ($itemArray as $item) {
$subItemArr = explode("\n", $item);
var_dump($subItemArr);
if (!empty($subItemArr) && is_array($subItemArr)) {
// 随机取一个ip和port
if (false !== strpos($subItemArr[0], 'global_ip')) {
unset($subItemArr[0]);
$ipPortPair = $subItemArr[array_rand($subItemArr)];
list($ip, $port) = explode(":", $ipPortPair);
}
// 取user和pass
if (false !== strpos($subItemArr[0], 'user_pass')) {
list($temp, $user) = explode(":", $subItemArr[1]);
list($temp, $pass) = explode(":", $subItemArr[2]);
}
// 随机取一个db
if (false !== strpos($subItemArr[0], 'db_name')) {
unset($subItemArr[0]);
$dbItem = $subItemArr[array_rand($subItemArr)];
list($temp, $db) = explode(":", $dbItem);
}
}
}
}
}
var_dump($ip, $port, $user, $pass, $db);