Server : nginx/1.22.1 System : Linux iZwz9daxib3w3i063fw434Z 3.10.0-1127.19.1.el7.x86_64 #1 SMP Tue Aug 25 17:23:54 UTC 2020 x86_64 User : www ( 1000) PHP Version : 5.6.40 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv Directory : /www/wwwroot/www.jkmold.com/phpcms/modules/member/fields/editor/ |
function editor($field, $value) { $setting = string2array($this->fields[$field]['setting']); if($setting['enablekeylink']) { $data = $this->_keylinks($value, $setting['replacenum'],$setting['link_mode']); } return $data; } function _base64_encode($t,$str) { return $t."\"".base64_encode($str)."\""; } function _base64_decode($t,$str) { return $t."\"".base64_decode($str)."\""; } function _keylinks($txt, $replacenum = '',$link_mode = 1) { $txt = addslashes($txt); $search = "/(alt\s*=\s*|title\s*=\s*)[\"|\'](.+?)[\"|\']/ise"; $replace = "$this->_base64_encode('\\1','\\2')"; $replace1 = "$this->_base64_decode('\\1','\\2')"; $txt = preg_replace($search, $replace, $txt); $keywords = $this->data['keywords']; if($keywords) $keywords = strpos(',',$keywords) === false ? explode(' ',$keywords) : explode(',',$keywords); if($link_mode && !empty($keywords)) { foreach($keywords as $keyword) { $linkdatas[] = $keyword; } } else { //TODO $linkdatas = array( 0 => array(0=>'网站',1=>'http://www.phpip.com'), 1 => array(0=>'百度',1=>'http://www.baidu.com'), ); } if($linkdatas) { $word = $replacement = array(); foreach($linkdatas as $v) { if($link_mode && $keywords) { $word1[] = '/'.preg_quote($v, '/').'/'; $word2[] = $v; $replacement[] = '<a href="javascript:;" onclick="show_ajax(this)" class="keylink">'.$v.'</a>'; } else { $word1[] = '/'.preg_quote($v[0], '/').'/'; $word2[] = $v[0]; $replacement[] = '<a href="'.$v[1].'" target="_blank" class="keylink">'.$v[0].'</a>'; } } if($replacenum != '') { $txt = preg_replace($word1, $replacement, $txt, $replacenum); } else { $txt = str_replace($word2, $replacement, $txt); } } $txt = preg_replace($search, $replace1, $txt); $txt = stripslashes($txt); return $txt; }