0

次のような単純なデータ形式があります。

stuff/stuff/stuff

例は次のとおりです。

data/test/hello/hello2

特定のデータを取得するには、私のパーサーを使用します。パーサーは次のことを試みます。

data/test/hello/hello2

の下のデータを取得したいとしますdata/test(これは ですhello)。私のパーサーのコードは次のとおりです。

function getData($data, $pattern)
{
    $info = false;

    $dataLineArray = explode("\n", $data);

    foreach($dataLineArray as &$line)
    {
        if (strpos($line,$pattern) !== false) {

            $lineArray = explode("/", $line);
            $patternArray = explode("/", $pattern);

            $iteration = 0;


            foreach($lineArray as &$lineData)
            {
                if($patternArray[$iteration] == $lineData)
                {
                    $iteration++;
                }
                else
                {
                    $info = $lineData;
                }
            }


        }
    }

    return $info;
}

ただし、常に最後のアイテムを返すようです。この場合はhello2次のとおりです。

echo getData("data/test/hello/hello2", "data/test");

私に与えます。

hello2

私は何を間違っていますか?

4

1 に答える 1