在php中读取特定字符后的文本

在php中读取特定字符后的文本,php,explode,Php,Explode,好的,我有一个文本文件,在文本文件的内部有以下几行: IP = 127.0.0.1 EXE = Client.exe PORT = 8080 TITLE = Title MAINT = False MAINT-Message = This is the message. 我想做的是在第五行得到“假”部分 我有一个基本的概念,但我似乎无法让它发挥作用。这就是我尝试过的: <?php $file = file_get_contents('LauncherInfo.txt'); $info =

好的,我有一个文本文件,在文本文件的内部有以下几行:

IP = 127.0.0.1
EXE = Client.exe
PORT = 8080
TITLE = Title
MAINT = False
MAINT-Message = This is the message.
我想做的是在第五行得到“假”部分

我有一个基本的概念,但我似乎无法让它发挥作用。这就是我尝试过的:

<?php
$file = file_get_contents('LauncherInfo.txt');
$info = explode(' = ', $file);

echo $info[5];
?>

这样我得到了一个结果,但当我回显$info[5]时,它会给我“False Maint Message”,所以它会将其拆分,但只在=号处拆分。我希望能够在按下enter键进入下一行的位置将其拆分。这可能吗?我该怎么做

我在想,如果我让它在第一行爆炸,然后在第二行做同样的循环,直到它到达文件的末尾,它会工作吗?但是我不知道怎么做


谢谢。

我想您正在查找file(),它将文件内容拆分为文件行数组

试试这个:

$file = file('LauncherInfo.txt');
foreach ($file as $line) {
    if ($line) {
        $splitLine = explode(' = ',$line);
        $data[$splitLine[0]] = $splitLine[1];
    }
}
echo $data['MAINT'];

以防你好奇,因为我不知道file()函数。你可以像这样手动操作

<?php
$file = file_get_contents('LauncherInfo.txt');
$lines = explode("\n", $file);
$info=array();
foreach($lines as $line){
  $split=explode(' = ',$line);
  $info[]=$splitline[1];
}
echo $info[5];//prints False
?>


如果您使用file()而不是file\u get\u contents(),您将拥有一个可以迭代的数组,或者通过行号(-1)作为数组键进行引用,根本不使用
explode
。考虑一个正则表达式,或者PaSeSysiIn文件。如果使用PaSereSyiNIX文件,请注意<代码> false <代码>将返回一个空字符串,只需使用我的答案,并将该模式更改为<代码>(*)* s*= s*(*)m 谢谢。做这件事有不同的方法。我现在明白了。哦,行了。非常感谢你。我调查了好几个小时。