PHP(ピー・エイチ・ピー)

PHP

PHP5.3で問題が発生です!!

最近、ディープのサーバーをさくらインターネットの専用サーバーへ乗り換えたのですが、

ちょっとした問題が発生しました。

 

新サーバーのPHPのバージョンは5.3なんですが、

旧サーバーで作成したシステムを乗せると至る所でエラーが!!!!!!!!!!!

 

PEARを使用しているプログラムで、

Deprecated: Assigning the return value of new by reference is deprecated

とか

Deprecated: Function eregi() is deprecated

のような、

今まであまり目にしたことのないエラーメッセージです。

 

どうも、

PHP5.3からerror_reportingに「E_DEPRECATED」というエラーレベルが追加されていました。

 

これは、

今後、ereg()関数やsplit()関数などのサポート廃止予定の関数を使用した場合には、警告を出しますよ!

みたいなことらしいです。

 

このエラーへの一番簡単な対処方法は、

error_reportingを「E_ALL & ~E_DEPRECATED」にして、E_DEPRECATEDのエラーは出さないようにする!!

です。

 

でも、

いずれサポート廃止する関数をこんな一時的な処置で回避していると後々エライ目に合いそうなんで、

エラーの箇所を洗い出して一つ一つ修正することにしました。

ereg()preg_match()に、

split()explode()に、

変更!!

 

これで大丈夫な筈なんですが、

なんせ至る所でPEARを使用しているので途中で挫折しました。

 

仕方ないので、やはりerror_reportingの設定を変更して対応することにしました。

といっても、大元のphp.iniを書き換えるのは嫌なので、

エラーが出ているページのスクリプトの頭の方に、

error_reporting(E_ALL & ~E_DEPRECATED);

という1行を加えてやることで回避しました。

 

結局、エラーレベルを変更するんかい、と言われそうですが。。。。

 

そこは大人の対応で気付かない振りをしてください。

 

WordPress短期学習プログラム

関連記事

  1. PHP(ピー・エイチ・ピー)

    PHP

    新着情報の不具合

    お客さんから、ホームページに表示させている新着情報が表示されなくな…

  2. PHP(ピー・エイチ・ピー)

    PHP

    PHPの驚くべき演算子

    先日、PHPだとif('01' == '1')がtrueになってしまう…

  3. 学習

    PHP

    WEBプログラマーを目指すなら、まずはPHPを学ぶべき!

    WEB業界への転職を考えている方は、まずはPHPを勉強すべきで…

  4. CakePHP

    PHP

    Indirect modification of overloaded element of Cak…

    $this->data = "1";といった具合で、Ca…

  5. PHP(ピー・エイチ・ピー)

    PHP

    Fatal error: Call to undefined function hash_hmac(…

    パスワードからハッシュ値を生成してDBに登録しようと、$pas…

  6. Security(セキュリティ)

    PHP

    PHP パスワードのクライアントへの表示について

    サイト制作を行っていると、会員制サイトを構築することも多々あると思…

最近の記事

  1. WordPressのセキュリティ対策(脆弱性対策)
  2. ドメイン失効
  3. SEO関連タグ
  4. SEO関連タグ
  5. レンタルサーバー(共用サーバー)
  6. システム開発用のアイキャッチ
  7. システム開発用のアイキャッチ
  8. ドメイン 利用制限
  9. WP:WordPress(ワードプレス)
  10. システム開発用のアイキャッチ
PAGE TOP