Autor Zpráva
jefitto44
Profil
Printrujem string a potrebujem ho vložiť do tagov <pre>STRING</pre>

Tento výpis sa však generuje v jednej class a tak mi príde blbé písať výstup ako

print "<pre>".$inputToPublish."</pre>";

Existuje nejaká PHP funkcia, ktorá by toto dokázala?
tiso
Profil
nie
Str4wberry
Profil
Kdyby místo <pre> stačilo <code>, tak to jde udělat barvicí funkcí highlight_string.

Jinak jde použít DOM:
$doc = new DOMDocument('1.0');
$pre = $doc->createElement('pre');
$text = $doc->createTextNode('Text');
$pre->appendChild($text);
$doc->appendChild($pre);
echo $doc->saveHTML();

Ale obé mi přijde zbytečně komplikované.
MONTYCEK
Profil
jefitto44:
Tak teď nevim jak to myslíš, ale nestačilo by si prostě vytvořit vlastní funkci?

Něco jako toto?

function _pre($string){
  return '<pre>'.$string.'</pre>';
}

A tu pak volat takto?

echo _pre($inputToPublish);
jefitto44
Profil
To je skoro to isté... mne by skôr trebalo niečo ako htmlentities, alebo niečo také, čo by nespustilo html tagy, iba by ich vypisalo
MONTYCEK
Profil
jefitto44:
Chceš vypsat html tagy jako text?
tiso
Profil
Myslíš htmlspecialchars?
MONTYCEK
Profil
tiso:
Teď jsem mu to chtěl navrhnout, že by si to mohl dát přímo do té funkce.

function _pre($string){
  return '<pre>'.htmlspecialchars($string).'</pre>';
}
jefitto44
Profil
Tak to predsa mám, ale príde mi to ako blbé riešenie...

Neviem čo chcem. Ja vlastne robím taký debug mode, čiže potrebujem tam vypísať obsahy rôznych premenných. Medziiným je tam jedna premenná, ktorá obsahuje XML feed. A toto XML tam asi nedostanem tak, aby boli zvýraznené tagy... jedine možno cez iframe... či?
tiso
Profil
jefitto44: vieš určiť čo tie rôzne premenné obsahujú? Ak hej, môžeš použiť JUSH alebo iný zvýrazňovač syntaxe.
jefitto44
Profil
Neviem práveže... to je vlastne pole. A v každej položke je niečo iné. Jedna z tých položiek je práve toto XMLko. V ďalšej budú parametre atď atď

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0