欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

phpcms輸入后臺內(nèi)容錄入框中支持php代碼實現(xiàn)思路

  發(fā)布時間:2013-03-28 17:57:08   作者:佚名   我要評論
主要是用到的ckedit會進行轉(zhuǎn)義,如果修改它,又沒必要. 所以,想了一下,繞繞即可完成支持php代碼的功能,感興趣的朋友可以了解下哈,希望可以幫助到你
extention.func.php中添加

復(fù)制代碼
代碼如下:

function templateQ($html, $format = 1) {
if (1 == $format) {// <!--Q^php code^Q-->
return preg_replace_callback("/<\!\-\-Q\^([\s\S]*?)\^Q\-\->/", '_templateQ', $html);
} else {//09="^php code^"
return preg_replace_callback("/09\=\"\^([\s\S]*?)\^\"/", '_templateQ', $html);
}
}
function _templateQ($php){
$php = trim($php[1]);
if ('=' == substr($php, 0, 1)) {//把 09="^=值^"
$php = 'echo ' .substr($php, 1);
} else if ('else' == $php) {//09="^else^"
$php = '} else {';
}
return '<?php ' .$php. ';?>';
}

在模板中

復(fù)制代碼
代碼如下:

$content = templateQ($content);
$qTemp = CACHE_PATH. 'caches_template\chrd\content\sp.content.c' .$catid.'.id'.$id. '.php';
file_put_contents($qTemp, $content);

然后在顯示內(nèi)容處

復(fù)制代碼
代碼如下:

{require_once($qTemp)}

看了一眼,主要是用到的ckedit會進行轉(zhuǎn)義,如果修改它,又沒必要.
所以,想了一下,繞繞即可完成支持php代碼的功能.

09="^ php code ^" 此形式的標簽,只適用于<>之間,不適合放到外面來,否則就會出現(xiàn)轉(zhuǎn)義,雖然可以轉(zhuǎn)回來,沒是沒必要,
<!--Q^php code^Q--> 形式標簽適合放到 <>外,一般沒人變態(tài)成放到<>間,多寫一行代碼也無所謂.
因為還需要考慮到復(fù)制進來的內(nèi)容會帶有特殊代碼,如js會造成js攻擊問題,
或是iframe問題.需要考慮.

此代碼只是演示,真正使用需要調(diào)試一下,為了原網(wǎng)站安全,此代碼并不是真實使用的代碼,在此也沒有實際測試它

相關(guān)文章

最新評論