Код (Text): function Func($test) { echo $test; } function Cont() { return 1; } предположим есть такая структура.. нужно Код (Text): Func(Cont() Cont()); Причём получится должно 11, как так сделать? я сделал Код (Text): Func(Cont().Cont()); Заработало! но только в больших структура не работает.. когда добавляется if например, как это обойти? Код (Text): Func(Cont() if(Cont() == 1){Cont()});
Я сделал так.. Код (Text): function Func($test) { echo $test; } function Cont() { return 1; } if(Cont() == 1){ $ts = Cont().Cont(); } Func(Cont().$ts); и ура! -> 111! но вот проблема Если я сделаю так Код (Text): $content = $sys->TableTR('bgcolor="FF8040"', $sys->TableTD('colspan = "4"', '<center><h4>У вас нет ни одного персонажа</h4></center>')); то она на пишется, как сделать чтобы она не писалась... ну она выводится на экран..
ExDragon на первый взгляд - монолог полоумного. но если внимательно вглядеться, то можно увидеть зачатки разума говоря проще, объясни по человечески, а то вообще с потолка свалилось
Gromo точняк, похожи =) на самом деля я привёл пример.. а $sys->TableTR это уже я делаю просто для наглядности показал что мне нужно.. я делаю хм генератор таблиц =) (я не сумасшедший=)) Код (Text): function Table($set, $content) { echo '<table '.$set.'>'.$content.'</table>'; } function TableTD($set, $content) { return '<td '.$set.'>'.$content.'</td>'; } function TableTR($set, $body) { return '<tr '.$set.'>'.$body.'</tr>'; } Код (Text): $sys->Table('align="center" class="Block"', //Первая строка $sys->TableTR('bgcolor="FF8000"', $sys->TableTD('colspan = "4"', '<center><h2>Ваши персонажи</h2></center>')) //Вторая строка .$sys->TableTR('bgcolor="FF8040"', //Ячейка имя $sys->TableTD('width = "130"', '<center><b>Имя</b></center>') //Ячейка инфа .$sys->TableTD('', '<center><b>Инфа</b></center>') //Ячейка Уровень .$sys->TableTD('width = "75"', '<center><b>Уровень</b></center>') //Ячейка Деньги .$sys->TableTD('', '<center><b>Деньги</b></center>')) //Третья строка .$content //Конец тоблиции ); а мне нужно выполнить проверку и заполнить таблицу.. Код (Text): if (!mysql_num_rows($query) == NULL){ //Чары есть, пакозать.. while ($userchar = mysql_fetch_assoc($query)){ //Создаём третью страку с чарами $content = $sys->TableTR('bgcolor="FF8040"', $sys->TableTD('', '<center><a href = "http://'.$_SERVER['HTTP_HOST'].'/'.$armory_dir.'/?player='.$userchar['guid'].'" target = "_blank">'.$userchar['name'].'</a></center>') .$sys->TableTD('', $sys->getFlag($userchar['race']) .$sys->getRace($userchar['race'], $userchar['gender']) .$sys->getClass($userchar['class'])) .$sys->TableTD('', '<center><h4>'.$userchar["level"].'</h4></center>') .$sys->TableTD('', $sys->getMoney($userchar['money']))); } //Нету, тогда сообщаем об этом } else { //Создаём третью страку $content = $sys->TableTR('bgcolor="FF8040"', $sys->TableTD('colspan = "4"', '<center><h4>У вас нет ни одного персонажа</h4></center>')); } отображается как то не так =( что не так?
ExDragon Тут лучше применять ООП: PHP: <?php class Table { private $options = false; private $rows = array(); public function __construct($options = false){ $this->options = $options; } public function appendRow($options = false){ $row = new TableRow($options); $this->rows[] = $row; return $row; } public function getHTML(){ $output = $this->options ? '<table '.$this->options.'>' : '<table>'; foreach($this->rows as $row){ $output .= $row->getHTML(); } return $output.'</table>'; } } class TableRow { private $options = false; private $cells = array(); public function __construct($options = false){ $this->options = $options; } public function appendCell($content, $options = false){ $cell = $options ? '<td '.$options.'>' : '<td>'; $this->cells[] = $cell.$content.'</td>'; return $this; } public function getHTML(){ $output = $this->options ? '<tr '.$this->options.'>' : '<tr>'; $output .= implode($this->cells).'</tr>'; return $output; } } $table = new Table(); $table->appendRow()->appendCell('a')->appendCell('b'); $table->appendRow()->appendCell('c', 'style="border: solid 1px blue;"')->appendCell('d'); echo $table->getHTML(); ?> так вот вроде проще будет. вариантов много, ООП рулит
ExDragon Ответь на вопрос: какую задачу ты пытаешься решить? Без кода, опиши задачу нормальным языком.
Апельсин ну блин, тащусь я от его книжки. чё пристал? кстати, тут тебе и пример ООП с последовательным вызовом методов