-6
`多くの複製されたjsonキーの最初のキーを取得するには?例えば
$json =
Array
(
[1] => b
[1] => c
[1] => d
)
は、私はちょうど最初の[1] => Bを取ると、あなたがここに与えてくれたことはJSONではない、とあなたはされません残り
`多くの複製されたjsonキーの最初のキーを取得するには?例えば
$json =
Array
(
[1] => b
[1] => c
[1] => d
)
は、私はちょうど最初の[1] => Bを取ると、あなたがここに与えてくれたことはJSONではない、とあなたはされません残り
を無視したいです重複するキーを持つPHPで配列を作成することができます。 はですが、JSONのオブジェクトのプロパティに重複するキーが存在する場合は有効ですが、ほとんどのパーサー(json_decode
を含む)がすべてのオブジェクトにアクセスすることはないため、お勧めしません。
ただし、ストリーミングパーサーは通常になります。は、これらのそれぞれを取得します。
私が書いた、pcrov/JsonReader
使用例:
use \pcrov\JsonReader\JsonReader;
$json = <<<'JSON'
{
"foo": "bar",
"foo": "baz",
"foo": "quux"
}
JSON;
$reader = new JsonReader();
$reader->json($json);
$reader->read("foo"); // Read to the first property named "foo"
var_dump($reader->value()); // Dump its value
$reader->close(); // Close the reader, ignoring the rest.
出力:
$reader = new JsonReader();
$reader->json($json);
while ($reader->read("foo")) {
var_dump($reader->value());
}
$reader->close();
:
string(3) "bar"
またはあなたがそれらのそれぞれを取得したい場合
出力:
string(3) "bar"
string(3) "baz"
string(4) "quux"
「json」や「配列」でも重複キーは使用できません –
キーは常に一意です。あなたはそれを複製することはできません –
あなたはなぜこれがあなたに必要なのか説明してください? –