sql >> Database >  >> RDS >> Mysql

Verouderde MySQL-extensie in PHP 5.5.x

Uw applicatie zal alleen kapot gaan als en wanneer de server waarop deze draait wordt geüpgraded naar een PHP-versie die de oude API niet ondersteunt. Als uw server niet wordt geüpgraded naar PHP 5.5, blijft uw app voor onbepaalde tijd draaien. Niets anders op het externe internet zal het in dat opzicht beïnvloeden; alleen upgrades naar uw eigen server zijn relevant.

Voorlopig wordt php 5.4 nog steeds actief ondersteund, dus je kunt met plezier op die versie blijven zonder dat je je zorgen hoeft te maken dat je code plotseling kapot gaat.

Op een bepaald moment in de toekomst, om de een of andere reden, moet u echter upgraden naar PHP 5.5 of hoger. PHP 5.4 wordt end-of-life en een overstap naar 5.5 wordt aanbevolen. Of als je een shared hosting-account gebruikt, heb je misschien niet eens een keuze voor je PHP-versie. Dus ja, je mag verwachten dat je huidige code niet werkt met de PHP-versie die je op dat moment gebruikt. Uiteindelijk.

Dus hoewel er geen onmiddellijke urgentie is om de overstap te maken, moet u overwegen dit zo snel mogelijk te doen. Eén ding niet wil is voor de dag die komt dat dingen kapot gaan en je betrapt wordt.

5.5 is nog maar net uitgebracht, dus je hebt waarschijnlijk nog een paar jaar voordat het de laagste beschikbare versie wordt, maar volg mijn advies; je wilt niet wachten tot het laatste moment.

U verklaarde dat uw app "echt robuust" is en "waarschijnlijk niet zal worden verbeterd". Het bevindt zich dus eigenlijk in een fase van alleen onderhoud op de lange termijn.

Gezien die criteria zou ik zeggen van wel, door eenvoudig over te schakelen naar de mysqli lib is een verstandige zet. De vereiste wijzigingen zijn vrij triviaal (het klinkt alsof u al weet wat u moet doen) en zouden vrijwel geen enkele invloed moeten hebben op de rest van de software.

Als je code echt robuust en goed geschreven is, heb je hem zo gestructureerd dat er een soort databaselaag is, wat betekent dat je toch niet veel hoeft te doen.

Als het niet zo goed gestructureerd is, kan het veel mysql_query() bevatten oproepen verspreid over de code, in welk geval het wat meer werk kan vergen. In dit geval, aangezien u toch aan de code werkt, kunt u overwegen de tijd te nemen om een ​​beetje te herstructureren. Maak een databaselaag. Misschien beginnen met het gebruik van voorbereide verklaringen. Ik zou ook aanraden om over te schakelen naar PDO in plaats van mysqli . Maar uw oproep -- gezien wat u in de vraag zei, zou het begrijpelijk zijn als u zo min mogelijk werk wilde doen.

Trouwens - als je dit nog niet hebt gedaan, wil je misschien ook dit lezen:Waarom zou ik mysql_*-functies niet gebruiken in PHP?



  1. GROUPING- en GROUPING_ID-functies in SQL Server begrijpen

  2. Kolomtelling komt niet overeen met waardetelling op rij, maar wel

  3. Vervang null door 0 in MySQL

  4. Fout:mysqlnd kan geen verbinding maken met MySQL 4.1+ met de oude onveilige authenticatie