2016-06-16 8 views
1

PHP関数を含むPHPファイルが見つかりました。古いアプリケーションの始めにファイルをインクルードするだけで、新しいPHPバージョンでも動作します。しかし、私はこれ以上見つけて幸運ではない。簡単に別のPHPのバージョン間のすべての問題を管理してPHPの修正を含める方法がありますPHPで非推奨および削除された関数をすべて置き換えます。

if (version_compare(PHP_VERSION, '5.0.0', '<')) { 
    ... 

これは一例

if(!function_exists('ereg')){ 
    function ereg($pattern, $string, &$array) 
    { 
     return preg_match('#'.$pattern.'#', $string, $array); 
    } 
} 

version_compareため、function_exists()を使用できますか? fix_mysql.inc.php

(私は今、主にsqlite3のクラスによって古いのsqlite-機能の代替を探しています)

は例えば、私は、対応するmysqliの機能を持つすべてのMySQLの機能を置き換えること、が含まを作成しました

+1

恐ろしいアイデアは、手動で修正してください/ –

+0

確かに、それは望ましいソリューションになるでしょうが、ひどいのですか?大規模なPHPスイートの場合、1つのインクルードファイルで修正するのではなく、数か月かかる場合があります – rubo77

+1

これらの機能を削除して下位互換性を失う理由がありました。それらを復元することは、それらの理由を打ち消し、おそらく多くの問題を再び導入する可能性があります。セキュリティーの修正や更新を気にしない限り、古いPHPバージョン、btwを実行できますが、そのコードを実行しないでください。 –

答えて

-2

error_reporting(E_ALL & ~E_DEPRECATED & ~E_NOTICE);

これは、手動で行う必要がある場合は、これを抑制するのに役立ちます。

+0

、私は私の古いアプリケーションに含めることができるインクルードファイルを探しています。これはPHPバージョンの変更によるすべてのエラーを自動的に修正します。 – rubo77

+0

@ rubo77抑止のために 'error_reporting(E_ALL &〜E_DEPRECATED &〜E_NOTICE)エラーは廃止予定の機能によるものです。 – Manish

+0

また、これには他の方法はないと思います。私は元の答えを編集しました。 – Manish

関連する問題