非推奨の関数を PHP の最新バージョンで動作させるにはどうすればよいですか? すべてのページで代替機能を変更したくありません。私が行っているメンテナンス プロジェクトでは非常に不可能です。非推奨の機能を動作させる方法があれば教えてください。
4 に答える
持っているコードを本当に変更できない場合は、非推奨の関数と同じ仕様を持つ新しい関数のラッパーを作成するのはどうですか? つまり、非推奨の関数を呼び出すが、古い関数の引数を受け取る新しい関数を作成します。効くかも…
非推奨の API を置き換える対応する API を使用するには、それらを修正する必要があります。非推奨の API は、何らかの理由で非推奨になっています。
非推奨の関数は、理由により非推奨になりました。PHPのディストリビューションを古いリリースバージョンのままにするか、非推奨としてマークされている関数をアップグレードして更新する必要があります。正しいことを行い、関数を新しいバージョンのPHPで使用されているものに更新する必要があります。PHP4は2008年に開発を停止しました。つまり、本当にずっと前にアップグレードする必要がありました。
Linuxを使用している場合、Regexxerは、すべてのファイルを一度に更新するのに役立つ場合があります。
正しいことは、コードを修正することです。PHP4 は 4 年前にサポートが終了し、現在はサポートされていません。PHP4 には、決して修正されることのない危険なバグが多数存在すると確信しています。
あなたが今置かれている状況は技術的負債と呼ばれます。遅かれ早かれ借金を返す必要があります。
古い関数を自分で再実装することで技術的負債を増やすことができますが、将来的にコードを維持するのがさらに難しくなります。非推奨のコードを修正したら、コード ベースで現在行っていることはすべて、おそらくゼロから再実装する必要があります。したがって、非推奨のコードに引き続き機能を追加する (そして負債を増やす) か、コードを 2012 年に持ち込んで負債を全額返済してから先に進み、新しいものを追加するかを選択できます。
コードを書くことは難しくなく、時間もかかりません。非推奨のコードを修正する効率的な方法を見つけることができるはずです。あなたとあなたのチームは、非推奨のコードのみに集中すれば、ほとんどまたはすべての非推奨コードを数日で解決できると確信しています。比較すると、スパゲッティのようなコード ベースで最も単純な機能を実装するのにどれだけの時間がかかるかを考えてみてください。