Po upgrade PHP na 5.6.8/5.6.9 nefunguje skládání SQL SQLBuilder

James07
Člen | 41
+
0
-

Mám na hostingu php5.cz nette(verzi 2.2.7) aplikaci, ale po upgrade na novější PHP (5.6.8 nebo 5.6.9) mi nefunguje sestavení SQL dotazu a místo toho se mi vyhazuje tato chybová hláška:

<?php
Warning

preg_replace_callback(): Compilation failed: internal error: previously-checked referenced subpattern not found at offset 185 search►

Source file

File: .../vendor/nette/database/src/Database/Table/SqlBuilder.php:395

385:            $builder = $this;
386:            $query = preg_replace_callback('~
387:                (?(DEFINE)
388:                    (?P<word> [a-z][\w_]* )
389:                    (?P<del> [.:] )
390:                    (?P<node> (?&del)? (?&word) (\((?&word)\))? )
391:                )
392:                (?P<chain> (?!\.) (?&node)*)  \. (?P<column> (?&word) | \*  )
393:            ~xi', function($match) use (& $joins, $builder) {
394:                return $builder->parseJoinsCb($joins, $match);
395:            }, $query);
396:        }
397:
398:
399:        public function parseJoinsCb(& $joins, $match)
?>

Výsledek je ten, že SQL kód se mi nesestaví správně a kvůli tomu mi nefungují žádné sql příkazy.

To, že je to zapříčiněné novou verzí PHP jenom odhaduji, ale stejný kód mi na PHP 5.6.7 fungoval bezchybně (stejně tak na 5.5.12).

RSS tématu Téma zavřeno