diff --git a/lib/private/App/AppStore/Fetcher/AppFetcher.php b/lib/private/App/AppStore/Fetcher/AppFetcher.php
index 21ec38ead308d132eb0cd07dcf6f72b727713de1..4dc517879e83b2590446d9b831ee47c02a83cecf 100644
--- a/lib/private/App/AppStore/Fetcher/AppFetcher.php
+++ b/lib/private/App/AppStore/Fetcher/AppFetcher.php
@@ -101,14 +101,32 @@ class AppFetcher extends Fetcher {
 					// Exclude all versions not compatible with the current version
 					try {
 						$versionParser = new VersionParser();
-						$version = $versionParser->getVersion($release['rawPlatformVersionSpec']);
+						$serverVersion = $versionParser->getVersion($release['rawPlatformVersionSpec']);
 						$ncVersion = $this->getVersion();
-						$min = $version->getMinimumVersion();
-						$max = $version->getMaximumVersion();
-						$minFulfilled = $this->compareVersion->isCompatible($ncVersion, $min, '>=');
-						$maxFulfilled = $max !== '' &&
-							$this->compareVersion->isCompatible($ncVersion, $max, '<=');
-						if ($minFulfilled && ($this->ignoreMaxVersion || $maxFulfilled)) {
+						$minServerVersion = $serverVersion->getMinimumVersion();
+						$maxServerVersion = $serverVersion->getMaximumVersion();
+						$minFulfilled = $this->compareVersion->isCompatible($ncVersion, $minServerVersion, '>=');
+						$maxFulfilled = $maxServerVersion !== '' &&
+							$this->compareVersion->isCompatible($ncVersion, $maxServerVersion, '<=');
+						$isPhpCompatible = true;
+						if (($release['rawPhpVersionSpec'] ?? '*') !== '*') {
+							$phpVersion = $versionParser->getVersion($release['rawPhpVersionSpec']);
+							$minPhpVersion = $phpVersion->getMinimumVersion();
+							$maxPhpVersion = $phpVersion->getMaximumVersion();
+							$minPhpFulfilled = $minPhpVersion === '' || $this->compareVersion->isCompatible(
+									PHP_VERSION,
+									$minPhpVersion,
+									'>='
+								);
+							$maxPhpFulfilled = $maxPhpVersion === '' || $this->compareVersion->isCompatible(
+									PHP_VERSION,
+									$maxPhpVersion,
+									'<='
+								);
+
+							$isPhpCompatible = $minPhpFulfilled && $maxPhpFulfilled;
+						}
+						if ($minFulfilled && ($this->ignoreMaxVersion || $maxFulfilled) && $isPhpCompatible) {
 							$releases[] = $release;
 						}
 					} catch (\InvalidArgumentException $e) {