# PHP Parse error: syntax error, unexpected '|', expecting '{'

**URL:** <https://forum.shopware.com/t/php-parse-error-syntax-error-unexpected-expecting/100751>\
**Category:** Installation / Einstieg\
**Created:** [7. August 2023 um 07:07 UTC](https://forum.shopware.com/t/php-parse-error-syntax-error-unexpected-expecting/100751 "2023-08-07T07:07:40Z")\
**Posts on this page:** 13\
**Page:** 1

<div class="post-metadata">

**Author:** ![splicho](https://avatars.discourse-cdn.com/v4/letter/s/c5a1d2/32.png) [@splicho](https://forum.shopware.com/u/splicho)\
**Post date:** [7. August 2023 um 07:07 UTC](https://forum.shopware.com/t/php-parse-error-syntax-error-unexpected-expecting/100751/1 "2023-08-07T07:07:40Z")

</div>

Hey,

habe versucht heute mal Shopware 6 aufzusetzen und nach dem aufrufen der Installations PHP Datei, hat meine Seite foldenen Error ausgeworfen:

```auto
Stacktrace:
PHP Parse error: syntax error, unexpected '|', expecting '{' in /home/users/splicho2/www/shop2/shopware-installer.phar.php on line 49

```

PHP Version ist momentan auf 8.1 und mein Webserver ist integriert in Keyhelp.  
Weiß einer woran das liegt?

---

<div class="post-metadata">

**Author:** ![Max\_Shop](https://avatars.discourse-cdn.com/v4/letter/m/58f4c7/32.png) [@Max\_Shop](https://forum.shopware.com/u/Max_Shop)\
**Post date:** [7. August 2023 um 12:09 UTC](https://forum.shopware.com/t/php-parse-error-syntax-error-unexpected-expecting/100751/2 "2023-08-07T12:09:18Z")

</div>

Wurde die Datei vollständig heruntergeladen? Ansonsten müsstest du Zeile 49 rauskopieren und hier posten, damit man den Fehler eingrenzen kann.

---

<div class="post-metadata">

**Author:** ![R4M](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/r4m/32/9983_2.png) [@R4M](https://forum.shopware.com/u/R4M)\
**Post date:** [7. August 2023 um 13:13 UTC](https://forum.shopware.com/t/php-parse-error-syntax-error-unexpected-expecting/100751/3 "2023-08-07T13:13:59Z")

</div>

Ich schätze mal diese Zeile.

```auto
function rewrites(): bool|string

```

---

<div class="post-metadata">

**Author:** ![splicho](https://avatars.discourse-cdn.com/v4/letter/s/c5a1d2/32.png) [@splicho](https://forum.shopware.com/u/splicho)\
**Post date:** [7. August 2023 um 15:30 UTC](https://forum.shopware.com/t/php-parse-error-syntax-error-unexpected-expecting/100751/4 "2023-08-07T15:30:46Z")

</div>

Hey.

Die Datei wurde vollständig heruntergeladen, ja.

```auto
function rewrites(): bool|string

```

Ist die Zeile worum es geht.

Hab es mal Lokal probiert mit Laragon, da komme ich bis zu dem Fenster mit den „Systemanforderungen“.

Also ich habe keine Ahnung woran das liegen kann… Die Bedinigungen sind nahezu gleich.

- Selbe PHP Version
- Alle extensions enabled
- Apache Webserver…

Der einzige große Unterschied hierbei, das Betriebssystem.

---

<div class="post-metadata">

**Author:** ![Max\_Shop](https://avatars.discourse-cdn.com/v4/letter/m/58f4c7/32.png) [@Max\_Shop](https://forum.shopware.com/u/Max_Shop)\
**Post date:** [7. August 2023 um 15:48 UTC](https://forum.shopware.com/t/php-parse-error-syntax-error-unexpected-expecting/100751/5 "2023-08-07T15:48:53Z")

</div>

Der Fehler wird durch das | geworfen. Das ist ein recht eindeutiger Hinweis, dass die PHP Version, mit der die Datei ausgeführt wird, nicht PHP8.1 oder höher entspricht. Auf der CLI ggfs. eine ältere Version installiert?

---

<div class="post-metadata">

**Author:** ![splicho](https://avatars.discourse-cdn.com/v4/letter/s/c5a1d2/32.png) [@splicho](https://forum.shopware.com/u/splicho)\
**Post date:** [7. August 2023 um 15:56 UTC](https://forum.shopware.com/t/php-parse-error-syntax-error-unexpected-expecting/100751/6 "2023-08-07T15:56:26Z")

</div>

> [@splicho](#):
>
> ```auto
> Stacktrace:
> PHP Parse error: syntax error, unexpected '|', expecting '{' in /home/users/splicho2/www/shop2/shopware-installer.phar.php on line 49
> 
> ```

Ich bin mir ziemlich sicher, dass 8.1 benutzt wird. Hier der Domain Eintrag mit der entsprechenden PHP Version.

 ![brave_PehbAjWPlU](https://europe1.discourse-cdn.com/flex013/uploads/shopware/original/3X/d/b/db2ae25691d3e2837484361f1ac4e0513b56b547.png)

---

<div class="post-metadata">

**Author:** ![splicho](https://avatars.discourse-cdn.com/v4/letter/s/c5a1d2/32.png) [@splicho](https://forum.shopware.com/u/splicho)\
**Post date:** [7. August 2023 um 23:10 UTC](https://forum.shopware.com/t/php-parse-error-syntax-error-unexpected-expecting/100751/7 "2023-08-07T23:10:20Z")

</div>

Siehe PHPInfo: [PHP 8.1.20 - phpinfo()](https://shop.emuheaven.io/info.php)

---

<div class="post-metadata">

**Author:** ![Max\_Shop](https://avatars.discourse-cdn.com/v4/letter/m/58f4c7/32.png) [@Max\_Shop](https://forum.shopware.com/u/Max_Shop)\
**Post date:** [8. August 2023 um 04:28 UTC](https://forum.shopware.com/t/php-parse-error-syntax-error-unexpected-expecting/100751/8 "2023-08-08T04:28:30Z")

</div>

Wenn du den Installer auf deinem Server mit PHP 8.1 ausführst, dann bekommst du folgende Fehlermeldung:

shopware/core v6.5.4.0 requires ext-zip \* → it is missing from your system. Install or enable PHP’s zip extension.

Sehr wahrscheinlich werden noch weitere PHP Extensions fehlen.

Schau dir doch lieber noch einmal die Systemanforderungen für Shopware an, damit keine „Folgefehler“ nach der Installation auftreten.

---

<div class="post-metadata">

**Author:** ![splicho](https://avatars.discourse-cdn.com/v4/letter/s/c5a1d2/32.png) [@splicho](https://forum.shopware.com/u/splicho)\
**Post date:** [8. August 2023 um 09:07 UTC](https://forum.shopware.com/t/php-parse-error-syntax-error-unexpected-expecting/100751/9 "2023-08-08T09:07:04Z")

</div>

Hey, vielen dank für deine Nachricht.

Habe jetzt PHP-Zip mit **apt install php-zip** installiert und bekomme immer noch die selbe Meldung mit dem syntax error. Zip Extension ist auch enabled in der PHP ini.

Die Fehlermeldung **„shopware/core v6.5.4.0 requires ext-zip \* → it is missing from your system. Install or enable PHP’s zip extension.“** , habe ich bisher auch noch gar nicht bekommen.

Ich weiß echt nicht mehr weiter…

---

<div class="post-metadata">

**Author:** ![Max\_Shop](https://avatars.discourse-cdn.com/v4/letter/m/58f4c7/32.png) [@Max\_Shop](https://forum.shopware.com/u/Max_Shop)\
**Post date:** [8. August 2023 um 09:17 UTC](https://forum.shopware.com/t/php-parse-error-syntax-error-unexpected-expecting/100751/10 "2023-08-08T09:17:07Z")

</div>

Hast du Apache danach neu gestartet? Hast du den Befehl exakt so eingegeben, falls ja, dann hast du für php8.2 bzw. 8.3 und nicht für php8.1 die Extension installiert.

Vielleicht solltest du einfach ein paar Euro in die Hand nehmen und jemand deinen Server einrichten und Shopware installieren lassen, der das täglich macht.

---

<div class="post-metadata">

**Author:** ![Max\_Shop](https://avatars.discourse-cdn.com/v4/letter/m/58f4c7/32.png) [@Max\_Shop](https://forum.shopware.com/u/Max_Shop)\
**Post date:** [8. August 2023 um 09:22 UTC](https://forum.shopware.com/t/php-parse-error-syntax-error-unexpected-expecting/100751/11 "2023-08-08T09:22:19Z")

</div>

Anscheinend ist dein PHP nicht wirklich gut konfiguriert, wirft auch einige Fehler.

`PHP Warning: PHP Startup: Unable to load dynamic library '/opt/keyhelp/php/8.1/lib/php/extensions/no-debug-non-zts-20210902/zip.so' (tried: /opt/keyhelp/php/8.1/lib/php/extensions/no-debug-non-zts-20210902/zip.so (libzip.so.5: cannot open shared object file: No such file or directory), /opt/keyhelp/php/8.1/lib/php/extensions/no-debug-non-zts-20210902//opt/keyhelp/php/8.1/lib/php/extensions/no-debug-non-zts-20210902/zip.so.so (/opt/keyhelp/php/8.1/lib/php/extensions/no-debug-non-zts-20210902//opt/keyhelp/php/8.1/lib/php/extensions/no-debug-non-zts-20210902/zip.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0`

---

<div class="post-metadata">

**Author:** ![splicho](https://avatars.discourse-cdn.com/v4/letter/s/c5a1d2/32.png) [@splicho](https://forum.shopware.com/u/splicho)\
**Post date:** [9. August 2023 um 00:38 UTC](https://forum.shopware.com/t/php-parse-error-syntax-error-unexpected-expecting/100751/12 "2023-08-09T00:38:39Z")

</div>

Ok, das problem lag daran, dass ich den falschen php binary Pfad angegeben hab.  
Jetzt bekomm ich aber folgenden Error:

```auto
sh: 1: exec: /opt/keyhelp/php/8.2/bin/: Permission denied

```

Pfad had 777 Rechte und owner ist root.

---

<div class="post-metadata">

**Author:** ![Max\_Shop](https://avatars.discourse-cdn.com/v4/letter/m/58f4c7/32.png) [@Max\_Shop](https://forum.shopware.com/u/Max_Shop)\
**Post date:** [9. August 2023 um 07:28 UTC](https://forum.shopware.com/t/php-parse-error-syntax-error-unexpected-expecting/100751/13 "2023-08-09T07:28:58Z")

</div>

keyhelp-php82 ist die korrekte Variable
