Rezolvare erori PHP aparute la trecerea la versiunea 5.4

Rezolvare erori PHP aparute la trecerea la versiunea 5.4

Eroare PHP Fatal error: Call to undefined function session_register()

In PHP 5.4 functiile session_register(), session_is_registered() si     session_unregister() au fost scoase, acestea returnand erori „Deprecated” incepand cu versiunea PHP 5.3.

Utilizarea sesiunilor se face prin apelarea initiala a functiei session_start() si definirea    variabilelor $_SESSION[‘my_session’]

https://be2.php.net/manual/en/function.session-start.php

In general eroarea poate fi ocolita prin comentarea functiilor scoase si adaugarea dupa caz a sesiunii de care este nevoie, exemplu:
<?php

session_start();

// session_register(‘my_session’);

$_SESSION[‘my_session’] = „Hello World”;

echo $_SESSION[‘my_session’].”<br />”;

Cautati in error_log fisierul si linia care genereaza eroarea, in exemplul de fata app/start.php linia 5:
PHP Fatal error: Call to undefined function session_register() in /home/account/public_html/app/start.php on line 5

Eroare PHP Fatal error: Call-time pass-by-reference has been removed

In PHP 5.4 utilizarea incorecta a referintelor „Passing by Reference” produce Fatal error oprind rularea scriptului.

Referintele (&$variabilele introduse in functie ce sunt modificate de functie) se folosesc doar la definirea functiilor, nu la apelarea functiilor. Din versiunea PHP 5.3 returneaza erori „Deprecated” iar din versiunea PHP 5.4 „Fatal error”.

Corectarea erorii este simpla, presupune scoaterea simbolului & din fata variabilelor la apelarea functiilor si se face prin urmarirea logului de eroare din interiorul contului „error_log”, aveti mai jos un exemplu:

PHP Fatal error:  Call-time pass-by-reference has been removed in /home/account/public_html/app.php on line 21

in fisierul app.php la linia 21:

// utilizarea incorecta &$users, se sterge simbolul &
$my_name = get_my_name($id, &$users, NULL);

// utilizare corecta fara simbolul &
$my_name = get_my_name($id, $users, NULL);

 

Important: Nu uitati sa efectuati un backup inainte de a modifica / sterge fisiere din cont:
https://www.hostvision.ro/always-backup/

Maxim
  • 17 septembrie 2016 la 15:32

Erorile trebuie rezolvate la timp, ca sa nu apara probleme pe urma.

Adauga un comentariu