Witam!
Przerabiam kod strukturalny na klasę i napotkałem błąd.
Najpierw kod:
<?php
require_once 'bbcode/stringparser_bbcode.class.php';
//kontener
class BBCode{
var $bbcode;
//konstruktor
function BBCode() {
$bbcode = new StringParser_BBCode ();
$bbcode->setParagraphHandlingParameters ("\n\n", "<p>", "</p>");
//PHP
$bbcode->addCode ('php', 'callback_replace', 'callbackPHP', array ('start_tag' => '<code>', 'end_tag' => '</code>'), 'code', array ('block', 'inline'), array ('code')); }
//callbacki
//PHP
function callbackPHP($action, $attributes, $content, $params, &$node_object) {
return codeHighlight($content, 'php');
}
//funkcja kolorujaca kod za pomoca Geshi'
function codeHighlight($str, $lang) {
//tymczasowo
return 'jezyk: '.$lang.' kod: '.$str;
}
}
//----- MAIN -------
if (!empty($_POST['text'])) {
$bbcode = new BBCode();
echo $bbcode->bbcode->parse ($_POST['text']); }
?>
Po wysłaniu formularza otrzymałem błąd:
Fatal error: Call to a member function parse() on a non-object in E:\WORKS\_usr\highlight\withbbcode2.php on line 39
W przed przepisaniem do klasy nie miałem tego problemu, wszystko działało poprawnie.
Gdzie zrobiłem błąd?
Ten post edytował onlyX 7.05.2008, 15:26:36