Browse Source

清除富文本html标签

master
ahbmz 4 years ago
parent
commit
96d5c4d59f
  1. 36
      app/api/controller/Content.php

36
app/api/controller/Content.php

@ -84,11 +84,13 @@ class Content extends Base
public function about() public function about()
{ {
//联系我们 //联系我们
$_data = strip_tags(Db::name('page')->where('id', 1)->field('content')->find()); $_data = Db::name('page')->where('id', 1)->field('content')->find();
$_data['content'] = strip_tags($_data['content']);
// $_data['map'] = Db::name('page')->where('id', 1)->field('content')->find(); // $_data['map'] = Db::name('page')->where('id', 1)->field('content')->find();
$_system = Db::name('system')->where('id', 1)->find(); $_system = Db::name('system')->where('id', 1)->find();
$_data['address'] = $_system['address']; $_data['address'] = $_system['address'];
$_data['tel'] = $_system['tel']; $_data['tel'] = $_system['tel'];
$_data['contact_phone'] = $_system['mobile_phone'];
$_data['phone'] = strip_tags(Db::name('debris')->where('name', 'contuct')->find()['content']); $_data['phone'] = strip_tags(Db::name('debris')->where('name', 'contuct')->find()['content']);
$_data['map'] = strip_tags(Db::name('debris')->where('name', 'map')->find()['content']); $_data['map'] = strip_tags(Db::name('debris')->where('name', 'map')->find()['content']);
return $this->result($_data, 1, ''); return $this->result($_data, 1, '');
@ -152,13 +154,41 @@ class Content extends Base
public function detail_product(int $id) public function detail_product(int $id)
{ {
$_db = Db::name('product'); $_db = Db::name('product');
$_data['detail'] = $_db->field('id,title,create_time,source,cate_id,content,summary') $_data['detail'] = $_db->field('id,title,create_time,source,cate_id,image,images,content,summary')
->where('status', 1) ->where('status', 1)
->find($id); ->find($id);
$_data['detail']['content'] = strip_tags($_data['detail']['content'],'<img>'); // $_data['detail']['content'] = strip_tags($_data['detail']['content'], '<img>');
//替换img 标签
// $_data['detail']['content'] = $this->replace_img_alt($_data['detail']['content']);
//$_data['detail']['content'] = str_ireplace('<img', '<image', $_data['detail']['content']);
$_cate = Db::name('cate')->where('id', $_data['detail']['cate_id'])->find();
$_data['detail']['source'] = $_cate['cate_name'];
$_data['postion']= Db::name('product')->field('id,title,image')->limit(4) $_data['postion']= Db::name('product')->field('id,title,image')->limit(4)
->order('sort DESC,create_time DESC')->select(); ->order('sort DESC,create_time DESC')->select();
return $this->result($_data, 1, ''); return $this->result($_data, 1, '');
} }
private function replace_img_alt($str = '')
{
if (empty($str)) {
return $str;
}
$str = htmlspecialchars_decode($str);
preg_match_all('/<img[\s\S]*?src\s*=\s*[\"|\'](.*?)[\"|\'][\s\S]*?>/i', $str, $result, PREG_SET_ORDER);
$pattern = '/(<img.*?)alt=(["\']).*?\2([^>]+>)/is';
$replacement = "\$1$3";
$resultCount = count($result);
for ($i = 0; $i < $resultCount; $i++) {
if (strpos($result[$i][1], '.swf') === false) {
$img[] = $result[$i][1];
//$imgStr = "<img src='" . $result[$i][1] . "' />";
$imgStr = preg_replace($pattern, $replacement, $result[$i][0]);
$str = str_replace($result[$i][0], $imgStr, $str);
}
}
return $str;
}
} }

Loading…
Cancel
Save