|
|
|
ต้องการตัด <br> ออกจาก SyntaxHighlighter ด้วย str_replace เมื่อใช้ nl2br |
|
|
|
|
|
|
|
คุณน่าจะจัดการตั้งแต่การจัดเก็บน่ะครับ จัดเก็บปกติโดยไม่ผ่าน function nl2br() ครับ มันจะไม่มี <br /> เกินมาครับ
|
|
|
|
|
Date :
2012-05-28 11:56:05 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เพิ่มตัวนี้เข้าไปครับ
Code (PHP)
function phpcode($s) {
$match = array('#\[php\](.*?)\[\/php\]#se');
$replace = array("'<pre class=\"brush:php\">'.str_replace('<br />','',('$1')).'</pre>'");
return (preg_replace($match, $replace, $s));
}
|
|
|
|
|
Date :
2012-05-28 11:59:52 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตอนนี้ผมใช้ตัวนี้
Code (PHP)
<?php
function view($t){
$br = '<!--x-->';
$t = str_replace(array("\r\n","\r","\n"),$br,htmlspecialchars($t));
$sr = array(
'/\[php\](.*?)\[\/php]/is' => '<pre class="brush: php;">%s</pre>',
'/\[js\](.*?)\[\/js]/is' => '<pre class="brush: js;" >%s</pre>',
'/\[html\](.*?)\[\/html]/is' => '<pre class="brush: html;" >%s</pre>',
);
foreach($sr as $s => $r){
preg_match_all($s, $t, $ms, PREG_SET_ORDER);
foreach($ms as $m) $t = str_replace($m[0], sprintf($r,str_replace($br,"\r\n",$m[1])), $t);
}
$t = str_replace($br,'<br'.'>',$t);
return $t;
}
น่าจะเป็นประโยชน์นะ
|
|
|
|
|
Date :
2012-05-28 17:00:02 |
By :
tamomnoi |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ทำได้แล้วคับ.. หามานาน
ขอบคุณ Extreamely และ Mr.win มากๆครับ
Code (PHP)
<?php
function view($t){
$br = '<!--x-->';
$t = str_replace(array("\r\n","\r","\n"),$br,htmlspecialchars($t));
$sr = array(
'/\[php\](.*?)\[\/php]/is' => '<pre class="brush: php;">%s</pre>',
'/\[js\](.*?)\[\/js]/is' => '<pre class="brush: js;" >%s</pre>',
'/\[html\](.*?)\[\/html]/is' => '<pre class="brush: html;" >%s</pre>',
);
foreach($sr as $s => $r){
preg_match_all($s, $t, $ms, PREG_SET_ORDER);
foreach($ms as $m) $t = str_replace($m[0], sprintf($r,str_replace($br,"\r\n",$m[1])), $t);
}
$t = str_replace($br,'<br'.'>',$t);
return $t;
}
|
|
|
|
|
Date :
2012-05-28 17:05:25 |
By :
Ball |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Date :
2012-05-28 19:51:47 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 04
|