首页 CMS系统 dede自定义模型的部分字段无法读取

dede自定义模型的部分字段无法读取

新建立了一个独立模型,可是突然发现模型列表中标题不能显示了,仔细分析发现并非完全不能显示,而是凡是带有中文的就不能显示。 然后一步一步分析,发现dede在显示独立模型文章列表时对独立模型的每一个字段都经过了ChannelUnit-MakeField方法的处理,原因

新建立了一个独立模型,可是突然发现模型列表中标题不能显示了,仔细分析发现并非完全不能显示,而是凡是带有中文的就不能显示。

然后一步一步分析,发现dede在显示独立模型文章列表时对独立模型的每一个字段都经过了ChannelUnit->MakeField方法的处理,原因是独立模型文章表中,凡是联动类型字段都保存的是数值,因此,需要将其转换成对应的名称,除此之外还进行了一些其他类型字段的处理。其中包括对于type是text的字段,那dedecms 会经过 HtmlReplace()方法进行处理。

问题就出在HtmlReplace方法中。某些时候HtmlReplace的中文转换是有问题的。

HtmlReplace

(>=DedeCMS 5.5)

函数名:HtmlReplace

功能:去除html中不规则内容字符

参数:

$str=”需要处理的字符串

$rptype=0返回类型

$rptype = 0表示仅替换html标记

$rptype = 1表示替换html标记同时去除连续空白字符

$rptype = 2表示替换html标记同时去除所有空白字符

$rptype = -1表示仅替换html危险的标记

返回值:

格式化后的字符串

注:其实貌似HtmlReplace出现问题与否跟php的版本是有关系的,最新的php版本好像会出问题,但也有可能是配置的问题。

本文来自网络,不代表青岛站长网立场。转载请注明出处: https://www.0532zz.com/html/zhonghe/cms/20200729/7308.html
上一篇
下一篇

作者: dawei

【声明】:青岛站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

为您推荐

【免责声明】本站内容转载自互联网,其发布内容言论不代表本站观点,如果其链接、内容的侵犯您的权益,烦请提交相关链接至邮箱xwei067@foxmail.com我们将及时予以处理。

Copygight © 2016-2023 https://www.0532zz.com All Rights Reserved.青岛站长网

站长:xwei067#foxmail.com(请把#换成@)