本文へ移動
Webstudio YAS
  • About
  • Price
  • Work
  • Blog
  • Contact
  • About
  • Price
  • Work
  • Blog
  • Contact
  1. ホーム
  2. Blog
  3. phpQueryで「Array and string offset access syntax with curly braces is deprecated」

公開日: 2022.08.02

phpQueryで「Array and string offset access syntax with curly braces is deprecated」

phpQueryで「Array and string offset access syntax with curly braces is deprecated」

目次

  • はじめに
  • 原因
  • 解決方法
  • その1
  • その2
  • まとめ

はじめに

PHPでスクレイピングする時によく使うライブラリー「phpQuery」を使っている時に、以下のエラーが出た。

Array and string offset access syntax with curly braces is deprecated

【Google翻訳】
中括弧を使用した配列および文字列オフセット アクセス構文は非推奨です

原因

「phpQuery」は最近更新されていないので、PHPの新しいバージョンに対応できていないのかもしれません。

ライブラリスクリプトの中に以下のような箇所がいくつかあり、その書き方が非推奨というエラーのようです。

$param{1} == 'n'

解決方法

その1

次のように波括弧を角括弧に置き換えます。

$param[1] == 'n'

数カ所あるのですべて修正したらエラーは出なくなりました。

その2

もっと簡単に解決する方法は、ライブラリを使う時に以下のように「@」を付けることでエラーの出力を回避できます。(根本的な解決にならないのと、別のエラーも無視してしまう可能性あり)

$html_dom = @phpQuery::newDocument($html_source);

まとめ

たまに使う時にこのエラーに出くわすので備忘録として残しておきます。スクレイピングするならPython使った方がいいのかな~と思う今日この頃です。

タグ

  • phpQuery
  • スクレイピング

関連記事

2019.06.04

【PHP】includeしたプログラム等をすぐに出力させないでバッファリングしておく方法(ob_start)

【PHP】includeしたプログラム等をすぐに出力させないでバッファリングしておく方法(ob_start)

2019.05.30

PHPでサイトのHTMLソースを取得する

PHPでサイトのHTMLソースを取得する

2021.08.01

【PHP】0埋めされていない1桁の分をDateTime::createFromFormat()に入れたらfalseを返してきた

【PHP】0埋めされていない1桁の分をDateTime::createFromFormat()に入れたらfalseを返してきた
Webstudio YAS
  • About
  • Price
  • Work
  • Blog
  • Contact
YAS プロフィール画像

長野県長野市在住
WEBエンジニア YAS

LINKS

  • X
  • Instagram
  • GitHub
Design
  • スタンダード
  • 和モダン
  • エンジニア
  • 信州ナチュラル
プライバシーポリシー

@ Webstudio YAS