PHP7 Upgrade issues for MySQL extension

View English version

PHP7 upgrade

Na een upgrade naar PHP7 kan het zijn dat (delen van) je website of applicatie niet meer werken. In het geval van WordPress zal dit meestal liggen aan zeer verouderde/niet meer onderhouden plugins. Je kan deze plugins dan updaten of verwijderen/vervangen. Voor maatwerk applicaties is soms meer werk vereist.

Volledige lijst: http://php.net/manual/en/migration70.incompatible.php


PHP Fatal error:  Uncaught Error: Call to undefined function mysql_connect() in ...

Reden: All ext/mysql functions were removed

Dit is tijdelijk op te lossen via de volgende code in elke PHP file die dit nodig heeft (of door deze op te nemen in een bestaande include file):

if(version_compare('5.6.0', PHP_VERSION) < 0)
{
	include_once('mysql.php');	
}



En het gebruik van de onderstaande mysql file die dan in de folder inc/ geplaatst moet worden: 
 https://github.com/dshafik/php7-mysql-shim/tree/master/lib

PHP Parse error: syntax error, unexpected 'new' (T_NEW)

Reden: New objects cannot be assigned by reference

Oplossing: verwijder & op de regel die in de error wordt genoemd

PHP Parse error: break' not in the 'loop' or 'switch' context

Reden: a break statement is no longer permitted outside a for, foreach or switch statement and gives a fatal error.

Oplossing: herschrijf code die break gebruikt buiten deze 3 statements, b.v. in een if statement

PHP Fatal error: Call to undefined function eregi

Reden: deze functie is sinds PHP 5.3 deprecated, en sinds 7.0 niet meer aanwezig

Oplossing: gebruik preg_match() in plaats hiervan

Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.