1

文字列の解析に問題があります。これは私が持っている構造です:

"Title":"Avatar","Year":"2009","Rated":"PG-13","Released":"18 Dec 2009","Runtime":"2 h 42 min"

私がやりたいことは、すべての結果を独自の変数に入れて、最終的に $title、$year、$runtime などを取得することです。

そのためのさまざまなPHP関数がたくさんあることは知っていますが、それらの多くを試してみて、望んでいた結果が得られなかったので、助けが必要です。

4

2 に答える 2

1

次のことを試すことができます。

<?php
    $string = "Title":"Avatar","Year":"2009","Rated":"PG-13","Released":"18 Dec 2009","Runtime":"2 h 42 min"
    $segments = explode(',', $string);
    foreach($segments as $segment) {
        list($key, $value) = explode(':', $segment);
        echo $key, ' ', $value;
    }
于 2012-05-26T10:24:17.303 に答える
1

文字列を少し変更すると、末尾{}. そしてjson_decode、変更された文字列で関数を呼び出します:

$str = '"Title":"Avatar","Year":"2009","Rated":"PG-13","Released":"18 Dec 2009","Runtime":"2 h 42 min"';
$arr = json_decode("{{$str}}", true);  // True to make it array, not object

// $arr contains parsed data

このデモを見てください。次のような変数を使用できます。

echo $arr["Title"];

しかし、本当に必要な場合$titleこれを行うことはお勧めしませんextract)、関数を使用できます

extract($arr);

そして、次のようにアクセスできます。

echo $title;
于 2012-05-26T10:25:32.563 に答える