Frågan#1
Tjena,
Här på wF används ju en funktion för att färga och även länka funktioner för php kod... Är det en inbyggd funktion som man bara kan plocka upp och använda eller? Jag tyckte jag läste det någon stans....
5 svar · 262 visningar · startad av Ricki
Tjena,
Här på wF används ju en funktion för att färga och även länka funktioner för php kod... Är det en inbyggd funktion som man bara kan plocka upp och använda eller? Jag tyckte jag läste det någon stans....
sida.phps funkar fint me...
F_I_C skrev:
sida.phps funkar fint me...
Vad menar du? Att man kan köra vilken fil som helst lr? :l
Tjena Ricki!
Här en kod som nicclas skrivit. Den länkar alla funktioner direkt till manualen på php.net... ;)
En annan variant. Med lite hjälp av sökfunktionen på webForum och manualen, fick jag ihop det här som även färgar koden:
<?php
function highlight($string){
$allfuncs = get_defined_functions();
$searches = array();
$replaces = array();
foreach ($allfuncs['internal'] as $name) {
$searches[] = "/([^a-z])$name( {0,1})<\/font><font color=\"\#006600\">\(/i";
$replaces[] = "\\1<a href=\"http://www.php.net/$name\" target=\"_blank\">$name</a>\\2(";
}
$strArray = preg_split("/\[code]/i", $string);
$string = "$strArray[0]";
for($i=1; $i<sizeof($strArray); $i++){
$strArray[$i] = preg_split("/\[\/code]/i", $strArray[$i]);
if ( strpos( $strArray[$i][0], '<?' ) === FALSE ){
$strArray[$i][0] = highlight_string("<?". $strArray[$i][0] ."?>", TRUE);
$strArray[$i][0] = str_replace(array(">?", "<?"), "", $strArray[$i][0]);
} else {
$strArray[$i][0] = highlight_string($strArray[$i][0], TRUE);
}
$strArray[$i][0] = preg_replace("/<br \/>(.*)/", "$1", $strArray[$i][0]);
$strArray[$i][0] = "\n<div class=\"code\">\n".$strArray[$i][0]."\n</div>\n";
$strArray[$i][0] = preg_replace($searches, $replaces, $strArray[$i][0]);
$string .= implode("", $strArray[$i]);
}
return $string;
}
// Och så här används den
$text="Lite text innan
[code]
<?php
highlight_string(\"Hej\");
?>
[/code]
och lite mer PHP
[code]
<?
echo \"Hej\";
?>
[/code]";
$text = highlight($text);
echo $text;
?>
Det du vill ha som kodblock lägger du inom
.