検索

ホームページ  >  に質問  >  本文

情報の取得とトリミングに strpos() PHP 関数を使用するときに発生する問題

JSON を含む API から生データを取得しており、返されたデータから JSON のみの部分を切り取ろうとしています。 PHP の strpos() 関数を使用して、JSON を先頭 (左中括弧の位置) から末尾 (右中括弧の位置) までトリミングする関数を作成しました。

しかし、問題が発生しました。データの一部の値にはセミコロンなどの特殊文字も含まれているため、関数が完全に切り取ることができません...

この問題を解決するもっと良い方法はありますか?

データの例:

リーリー

これは私が書いた関数です:

リーリー

したがって、この関数を使用すると、常に DisplayName で停止します...

P粉692052513P粉692052513514日前713

全員に返信(1)返信します

  • P粉598140294

    P粉5981402942023-09-22 00:33:25

    あなたの $data は不正な形式の JSON 文字列のようです。

    これが不正な入力によるもので、$data が通常の JSON 文字列である場合は、戦略を変更することをお勧めします。

    正しい JSON 文字列が次のとおりであると仮定します:

    リーリー

    その後、JSON を通常の PHP 配列に変換し、そのキーにアクセスできます。

    リーリー

    データ結果は URL エンコードされた文字列です:

    URL エンコードされていない文字列が必要な場合は、変換を追加するだけです:

    リーリー

    次の内容が得られます:

    返事
    0
  • キャンセル返事