欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

求熟悉discuz的朋友看看。。

程序员文章站 2022-06-10 14:25:27
...
求指教,我在discuz 插件中看见 require_once libfile('function/discuzcode');
foreach($tasks as $k=>$task){
$tasks[$k]['intro']=discuzcode($task['intro']);
}

这段代码,我想请教下,discuzcode()函数是什么意思。。我把这段注释掉好像对插件也没有影响。。


具体函数代码我就不上了,反正我看了下,貌似有14个参数。。



回复讨论(解决方案)

这个函数的作用只是把表中信息的标签进行转化,就是一些使用UBB代码的时候就会进行转换了,如果去掉,就不会有转换效果

求指教,我在discuz 插件中看见 require_once libfile('function/discuzcode');
foreach($tasks as $k=>$task){
$tasks[$k]['intro']=discuzcode($task['intro']);
}

这段代码,我想请教下,discuzcode()函数是什么意思。。我把这段注释掉好像对插件也没有影响。。


具体函数代码我就不上了,反正我看了下,貌似有14个参数。。

function discuzcode($message, $smileyoff, $bbcodeoff, $htmlon = 0, $allowsmilies = 1, $allowbbcode = 1, $allowimgcode = 1, $allowhtml = 0, $jammer = 0, $parsetype = '0', $authorid = '0', $allowmediacode = '0', $pid = 0, $lazyload = 0) {
global $_G;

static $authorreplyexist;

if($parsetype != 1 && !$bbcodeoff && $allowbbcode && (strpos($message, '[/code]') || strpos($message, '[/CODE]')) !== FALSE) {
$message = preg_replace("/\s?\[code\](.+?)\[\/code\]\s?/ies", "codedisp('\\1')", $message);
}

$msglower = strtolower($message);
看看这里就知道了啊
第一个参数就是传递过来的内容参数 $message,对这个内容进行标签转换,他默认的情况下是需要标签转换的,就是如果含有[/CODE]这个的UBB标签就转换,其他的自己去理解吧,主要作用就是这个