ホームページ  >  記事  >  バックエンド開発  >  一重引用符を含む JSON キーからアンマーシャルする

一重引用符を含む JSON キーからアンマーシャルする

WBOY
WBOY転載
2024-02-14 15:12:09503ブラウズ

从包含单引号的 JSON 键解组

php エディターの Shinichi さんが、一重引用符を含む JSON キーからアンマーシャリングする興味深いテクニックを紹介しました。このヒントは、開発者が JSON データを処理する際の柔軟性を高め、一重引用符を含めることによって発生する解析エラーを回避するのに役立ちます。いくつかの簡単なトリックと関数を使用することで、開発者はこの状況に簡単に対処し、JSON データの正しい解析と処理を保証できます。この手法は、JSON データを頻繁に扱う開発者にとって非常に便利で、開発効率とコードの品質を向上させることができます。

質問内容

この件について非常に迷っています。 一部のキーに一重引用符が含まれている、json でシリアル化されたデータを (フランス語のデータベースから) ロードする必要があります。

これは簡略版です:

リーリー

アンマーシャリングではエラーは発生しませんが、「prix d'achat」 (p.cost) は正しく解析されません。

map[string]any にアンマーシャリングすると、「prix d'achat」キーが期待どおりに解析されます。 リーリー

構造体タグに関する

json.marshal ドキュメントを確認しましたが、処理しようとしているデータに問題は見つかりませんでした。

ここで明らかな何かが欠けていますか? 構造体タグを使用して一重引用符を含む JSON キーを解析するにはどうすればよいですか?

貴​​重なご意見をありがとうございました!

回避策

ドキュメントには何も見つかりませんでしたが、

json エンコーダーは一重引用符をタグ名の予約文字 として扱います。 リーリー

ここで質問するのは当然だと思います。それまでの間、

json.unmarshaler および/または json.marshaler を実装する必要があります。これが始まりです: リーリー

遊び場で試してみましょう:

https://www.php.cn/link/9b47b8678d84ea8a0f9fe6c4ec599918一个>

以上が一重引用符を含む JSON キーからアンマーシャルするの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はstackoverflow.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。