PHP读取带有以下标签的文本文件

PHP读取带有以下标签的文本文件,php,function,readfile,Php,Function,Readfile,因此,我有这些文本文件,其中包含一些关于它的详细信息,我希望PHP分别提取和分发每个数据 文本文件上的示例数据: Plugin Name: Sample Framework Description: This is a sample framework Author: User Friendly 我想要的是从特定的标签中获取每个数据,比如如果我想要获取“插件名称”,那么预期的结果将是: Sample Framework 如果我想得到这样的描述: This is a sample framew

因此,我有这些文本文件,其中包含一些关于它的详细信息,我希望PHP分别提取和分发每个数据

文本文件上的示例数据:

Plugin Name: Sample Framework
Description: This is a sample framework
Author: User Friendly
我想要的是从特定的标签中获取每个数据,比如如果我想要获取“插件名称”,那么预期的结果将是:

Sample Framework
如果我想得到这样的描述:

This is a sample framework
但我不知道怎么做。preg_replace或preg_match可能有效,但是如果文本文件中有隆隆声数据,我认为这不起作用,但我愿意接受任何答案

我还有这个现有的函数来确定我想要显示什么样的细节

见下例:

<?php
function getDetails($var){
    if($var=='pname'){
        //get the plugin name
    }
} ?>


我认为有很多平台可以做到这一点,但我无法理解。

这应该适合您:

只需使用
file()
将文件读入一个数组,然后将第一行提取为键,另一行提取为数据,然后就可以
array\u组合()

<?php

    $lines = file("test.txt", FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
    $lines = array_map(function($v){
        return explode(":", $v);
    }, $lines);

    $data = array_combine(array_map("array_shift", $lines), array_map("array_pop", $lines));

    print_r($data);

?>

您的文件将只包含这3行,还是有多行相同的行?我认为用户可以添加更多行,但现在,列表上的行是主要的行。非常感谢,令人印象深刻。而不是使用打印(数据);我还可以添加一个参数来选择数组print_r中的特定数据($data['Author']);
Array
(
    [Plugin Name] =>  Sample Framework
    [Description] =>  This is a sample framework
    [Author] =>  User Friendly
)