PHP генератор HTML-класса - PullRequest
       4

PHP генератор HTML-класса

1 голос
/ 07 марта 2012

я использую этот класс для создания содержимого HTML

http://code.google.com/p/php-class-html-generator/

Я пытаюсь построить таблицу таким образом, но результат HTML неверен ...

$messalist = array(...);

    $html = htmltag::createElement('table')->id( $attr['id'] );

        foreach($messagelist as $message){
             $html->addElement('tr')
             ->addElement('td')->setText($message['subject'])
             ->addElement('td')->setText($message['from'])
             ->addElement('td')->setText($message['date'])
             ->addElement('td')->setText($message['size']);
        }

echo $html;

Как сделатьэто правильно?Спасибо

Это генерируется HTML:

<table id="messagelist">
    <tr>
    <td>
    <td>
    <td>
    <td>1.91kB</td>23 Feb 11:56 AM</td>To: me@me.com</td>Re: helooo</td></tr>
    <tr>

    <td>
    <td>
    <td>
    <td>1.67kB</td>27 Feb 6:56 AM</td>me@me.com</td>Re: Helloo</td></tr></table>

и это то, что мне нужно:

<table id="messagelist">
    <tr>
    <td>1.91kB<td></td>23 Feb 11:56 AM</td><td>To: me@me.com</td><td>Re: helooo</td></tr>
    <tr>
    <td>1.67kB</td><td>27 Feb 6:56 AM</td><td>me@me.com</td><td>Re: Helloo</td></tr></table>

Ответы [ 2 ]

3 голосов
/ 07 марта 2012

Попробуйте:

foreach($messagelist as $message){
     $tr= $html->addElement('tr');
     $tr->addElement('td')->setText($message['subject']);
     $tr->addElement('td')->setText($message['from']);
     $tr->addElement('td')->setText($message['date']);
     $tr->addElement('td')->setText($message['size']);
}
0 голосов
/ 07 марта 2012

Не слишком знаком с этим генератором, но вы добавили только точку с запятой после последнего -> setText. Это подходящий синтаксис? Я видел этот тип сокращений раньше, но обычно он требует от вас полной декларации:

$html->addElement('td')->setText($message['subject'])
     ->addElement....
     ->addElement...
     ->addElement....;

Может быть стоит попробовать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...