Since i upgraded my php version from 5.6 to 7.2, i have a persistant error on my php_errors.log:
PHP Parse error: syntax error, unexpected '?' in /vendor/laravel/framework/src/Illuminate/Foundation/helpers.php on line 500
On Line 500:
return $factory->of($arguments[0], $arguments[1])->times($arguments[2] ?? null);
I Search for this on stackoverflow, and the main cause is server still using php5.6, but i think it's not the reason. Platform is Laravel 5.7 and apparently is all working fine.
If i run php -v
from the terminal i got PHP 7.2:
PHP 7.2.12-1+ubuntu16.04.1+deb.sury.org+1 (cli) (built: Nov 12 2018 09:55:12)(NTS)
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.2.12-1+ubuntu16.04.1+deb.sury.org+1, Copyright (c) 1999-2018, by Zend Technologies
Some questions on stackoverflow suggest adding a phpinfo to show the php version used by the system, and actually is the correct:
Even if i tried to disable old version, server says that php5.6 is already disabled:
Module php5.6 already disabled
With php5.6 disabled and php 7.2 up and running, what could be causing this ?
Thanks in advance.
return $factory->of($arguments[0], $arguments[1])->times($arguments[2] ?? null);
, which should work in 7.2. I'm not sure where you're running phpinfo from, but try creating the file within the public directory and browse to it, just in case it's running from a different ini. – aynberphpinfo()
call in Laravel'spublic/index.php
to make sure Laravel is getting PHP 7.2. The error message you're getting is exactly what older PHP versions would say when encountering modern Laravel. – ceejayoz