我遇到了PHP 5.3和Joomla的问题,错误显示如下这个preg_replace()[function.preg-replace]:/ var / www /
中的未知修饰符'w'我的代码
$params = $this->item->params;
$images = json_decode($this->item->images);
$urls = json_decode($this->item->urls);
$canEdit = $this->item->params->get('access-edit');
$user = JFactory::getUser();
$imagesJson = json_decode($this->item->images);
$images_stringPath = substr($imagesJson->image_fulltext, 0,strripos($imagesJson->image_fulltext, '/'));
$path = "/".$images_stringPath;
$tmp_filename=preg_replace($_SERVER["DOCUMENT_ROOT"].$path.'/','',$value);
答案 0 :(得分:0)
使用preg_replace()
进行简单的字符串替换是过度的。请改用str_replace()
。
无论如何,preg_replace()
期望正则表达式模式被“分隔符”包围,你没有提供。
详细说明,这是函数调用的外观:
$tmp = preg_replace('/var/www/.../', '', $value);
// ^ ^^
// | ||
// | |+--- "modifier"
// | +---- terminating delimiter
// +-------- starting delimiter
起始分隔符将是正斜杠/
。这会在var
之后终止模式。在终止分隔符后,preg_replace()
允许optional modifiers。 w
不属于他们。