Parse error: syntax error, unexpected ‚const‘ (T_CONST), expecting variable (T_VARIABLE)
- ragulin
- Člen | 58
Ahoj,
Parse error: syntax error, unexpected ‚const‘ (T_CONST), expecting variable (T_VARIABLE) in C:\xampp7\htdocs\XXX\htdocs\vendor\nette\safe-stream\src\SafeStream\SafeStream.php on line 28
localhost 7.0.27
na produkci je stejná verze PHP a běží to
NETTE 2.4.0
Co s tím? Přeci nemohu opravovat source data NETTE, ne?
Našel jsem všude po internetu, že je problém s tímto v PHP 7.0 a že to je povolené až od 7.1. Ten projekt ale běží na produkční a není důvod , proč by to na localhostu nešlo. Updatovat PHP rozhodně nemužu.
Děkuji za radu
Editoval ragulin (14. 10. 2020 2:44)
- David Matějka
- Moderator | 6445
kdyz napises composer show
, tak ti to ukaze nainstalovane verze
balicku. a asi uvidis, ze u safe-stream balicku mas nainstalovanou verzi 2.4,
ktera vyzaduje php 7.1. asi to aktualizoval nekdo, kdo ma novejsi
verzi php.
na produkci tak musi bud byt starsi verze safe-stream nebo novejsi php.
koukni, jak nastavit pozadovanou verzi php pro projekt .. tim composeru reknes, ze ma vzdy brat jako rozhodujici verzi 7.0 bez ohledu na verzi php, ktera aktualne bezi.
jinak bys mel aktualizovat php, 7.0 uz neni nekolik let podporovana: https://www.php.net/…versions.php
- ragulin
- Člen | 58
Děkuji za radu.
PHP aktualizovat nyní nemohu, plánujeme Docker a pak možná.
Pokud to někomu do budoucna pomůže:
Smazat composer.lock , stáhnotu composer.lock z produkční verze.
Smazat obsah složky vendor
Composer install
Chyba vznikla tím, že jsem naklonoval projekt a v composer.json bylo nastavené, aby se nainstalovala nejnovější verze safe-stream, což jí updatovalo na 2.4, která nefunguej s PHP 7.0