我使用' explode()'我得到了一些字符串。但是我需要做更多的步骤。我必须通过分隔符将该数组输出分割几次。
txt文件的内容如下所示
Question1|opt1,opt2,opt3;Question2|opt1,opt2,opt3;question3|opt1,opt2,opt3;Question4|opt1,opt2,opt3;
请查看代码
$open=fopen("mydata.txt","r+");
while(!feof($open)){
$see=fgets($open);
$exp=explode(";",$see);
//$exp1=explode("|",$exp);
//$exp2=explode(",",$exp1);
$vaq = "</br> ".$imp[0];
echo $vaq;
}
fclose($open);
我需要的是以下列格式回应
Question1
Opt1
Opt2
Opt3
Question2
Opt1
Opt2
Opt3
.......
.......
.......
我知道&#39;爆炸()&#39;拆分字符串和输出数组。但即使在那之后试图查看结果。它给了我错误。
期待获得专家协助。
提前致谢。
答案 0 :(得分:2)
$str = file_get_contents('mydata.txt');
$data = preg_split('/[\|,;]/', $str);
echo join("\n<br>", $data);
代码假定非QuestionN
,OptN
内有符号|
,,
和;
。
如果你想分开所有的东西
$blocks = explode(';', file_get_contents('mydata.txt'));
foreach($blocks as $block)
{
list($question, $opts) = explode('|', $block);
$opts = explode(',', $opts);
// do whatever you wanted to do
var_dump($question);
var_dump($opts);
}