ErrorException [8192]:preg_replace():不推荐使用/ e修饰符,而是使用preg_replace_callback 上 http://mastersoftwaretechnologies.com/kohana/index.php/user/login
答案 0 :(得分:3)
这适用于我的kohana-3.2
替换
$column = preg_replace('/"(.+?)"/e', '$this->quote_column("$1")', $column);
到
$column = preg_replace_callback('/"(.+?)"/', function($m) { return $this->quote_column($m[1]); }, $column);
在文件MODPATH / database / classes / kohana / database.php第525行
中答案 1 :(得分:0)
看起来你正在使用php 5.5。如果你想使用preg replace eval,你必须修改它,因为出于安全原因它已被弃用:http://php.net/manual/en/migration55.deprecated.php
使用php 5.5,你应该使用preg_replace_callback()
您可以在这里找到很好的例子:Replace deprecated preg_replace /e with preg_replace_callback
并在此处了解其工作原理:Replace preg_replace() e modifier with preg_replace_callback
只需相应地修改第二个参数就可以了解匹配的内容。