[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Вывести массив в <td></td>
vostokoved
Всем привет,

Сразу оговорюсь, я не мастер по программированию, поэтому и обращаюсь сюда.
Буду очень признателен, если кто-то сможет дать ответ.

Есть следующий код:

<?php if ($this->checkPosition('position_name')) : ?>
<ul>
<?php echo $this->renderPosition('position_name', array('style' => 'list')); ?>
</ul>
<?php endif; ?>


Благодаря array('style' => 'list') на выходе получаем:

<ul>
<li>Значение1</li>
<li>Значение2</li>
<li>Значение3</li>
<li>Значение4</li>
<li>...</li>
</ul>

Вопрос, как мне на выходе получить код вида:

<tr>
<td>Значение1</td>
<td>Значение2</td>
<td>Значение3</td>
<td>Значение4</td>
<td>...</td>
</tr>

Спасибо заранее



Спустя 14 минут, 30 секунд (22.02.2012 - 06:26) Игорь_Vasinsky написал(а):
Джумла?

Спустя 2 минуты, 29 секунд (22.02.2012 - 06:28) vostokoved написал(а):
Да, Игорь, Zoo 2.4.14

Спустя 7 минут, 44 секунды (22.02.2012 - 06:36) Игорь_Vasinsky написал(а):
если без должного гемора с вниканием в классы джумлы то
это
Цитата
<?php echo $this->renderPosition('position_name', array('style' => 'list')); ?>

заменить на это
<?php strtr($this->renderPosition('position_name', array('style' => 'list')), array('ul'=>'tr', 'li'=>'td')); ?>

Спустя 11 минут, 4 секунды (22.02.2012 - 06:47) vostokoved написал(а):
Игорь, спасибо огромное, сейчас попробую
Если будет работать - с меня пиво (не шучу)

Спустя 23 минуты, 16 секунд (22.02.2012 - 07:10) Игорь_Vasinsky написал(а):
да лан, плюсика достаточно будет

Спустя 12 минут, 30 секунд (22.02.2012 - 07:23) vostokoved написал(а):
Игорь, спасибо за помощь, но, к сожалению, код не работает.
Возможно, из-за зуу...sad.gif
Плюс после 10 постов обязательно поставлю

Спустя 9 минут, 46 секунд (22.02.2012 - 07:32) Игорь_Vasinsky написал(а):
так а что выдаёт? я на строке проверял

Спустя 2 минуты, 34 секунды (22.02.2012 - 07:35) Игорь_Vasinsky написал(а):
покажите что именно возращает эта строка

<?php echo $this->renderPosition('position_name', array('style' => 'list')); ?>

Спустя 22 минуты, 12 секунд (22.02.2012 - 07:57) vostokoved написал(а):
Игорь, спасибо за Ваше участие,

Прилагаю подробные скриншоты кода и выхода

user posted image
user posted image
user posted image
user posted image

Спустя 4 минуты, 21 секунда (22.02.2012 - 08:02) Игорь_Vasinsky написал(а):
понял. у вас с моим кодом как выводит?

Спустя 16 минут, 18 секунд (22.02.2012 - 08:18) vostokoved написал(а):
Игорь,

Я использовал код, который Вы дали следующим образом:
<?php if ($this->checkPosition('day1')) : ?>
<ul>
<?php strtr($this->renderPosition('day1', array('style' => 'list')), array('ul'=>'tr', 'li'=>'td')); ?>
</ul>
<?php endif; ?>

Но выводится, только <ul> </ul> как на скриншоте

Спасибо

user posted image

Спустя 2 минуты, 48 секунд (22.02.2012 - 08:21) Игорь_Vasinsky написал(а):
у вас там массив, попробуйте
<?php echo str_replace(array('ul', 'li'), array('tr', 'td'), $this->renderPosition('position_name', array('style' => 'list'))); ?>

Спустя 29 минут, 22 секунды (22.02.2012 - 08:50) Игорь_Vasinsky написал(а):
а если там строка, то нужно просто echo для вывода добавить

<?php echo strtr($this->renderPosition('day1', array('style' => 'list')), array('ul'=>'tr', 'li'=>'td')); ?>



Спустя 10 минут, 59 секунд (22.02.2012 - 09:01) vostokoved написал(а):
Сейчас попробую, Игорь!!

Спустя 16 минут, 59 секунд (22.02.2012 - 09:18) vostokoved написал(а):
Игорь, я использовал этот код:


<?php if ($this->checkPosition('day1')) : ?>
<ul>
<?php echo str_replace(array('ul', 'li'), array('tr', 'td'), $this->renderPosition('day1', array('style' => 'list'))); ?>
</ul>
<?php endif; ?>

Уже ближе, но между <ul></ul> всё вывелось куском
user posted image

Спустя 12 минут, 17 секунд (22.02.2012 - 09:30) Игорь_Vasinsky написал(а):
Это замени
Цитата
<ul>
<?php echo str_replace(array('ul', 'li'), array('tr', 'td'), $this->renderPosition('day1', array('style' => 'list'))); ?>
</ul>

на это
<table>
<?php
ob_start();
echo $this->renderPosition('position_name', array('style' => 'list'));
$data = ob_get_contents();
ob_end_clean();
echo strtr($data, array('ul'=>'tr', 'li'=>'td'));
?>
</table>

Спустя 7 часов, 38 минут, 27 секунд (22.02.2012 - 17:09) vostokoved написал(а):
Уважаемый Игорь,

Большое Вам спасибо!
Вы очень помогли!!!! Всё работает просто супер...не знаю, как и отблагодарить...

Спустя 31 минута, 25 секунд (22.02.2012 - 17:40) Игорь_Vasinsky написал(а):
плюсиком wink.gif

Спустя 13 часов, 27 минут, 51 секунда (23.02.2012 - 07:08) vostokoved написал(а):
Игорь, если что, к Вам можно обращаться за более сложными заданиями?
Я так понимаю, на фрилансе?
Плюсик - разумеется smile.gif

Спустя 1 месяц, 11 дней, 8 часов, 17 минут, 59 секунд (5.04.2012 - 15:26) celebritas написал(а):
Здравствуйте! Тоже столкнулась с проблемой вывода массива в таблицу в Zoo, попробовала ваш код, получилось:
   <div id="tab-properties">
<table
class="item-properties">
<td
class="element element-select first">
<strong>
Вид: </strong>Белый сахар</td>
<td
class="element element-select">
<strong>
Форма: </strong>Стик</td>
<td
class="element element-select">
<strong>
Тематика: </strong>Реклама</td>
<td
class="element element-country">
<strong>
Страна: </strong>Российская Федерация</td>
<td
class="element element-select last">
<strong>
Вес: </strong>5 г</td>
</table>
</div>


user posted image
Код:
      <?php if ($this->checkPosition('tab-properties')) : ?>
<div id="tab-properties">
<
table class="item-properties">
<?php
ob_start();
echo $this->renderPosition('tab-properties', array('style' => 'list'));
$data = ob_get_contents();
ob_end_clean();
echo strtr($data, array('ul'=>'tr', 'li'=>'td'));?>
</table>
</
div>
<?php endif; ?>

Надо, соответственно, результат:
Вид Белый сахар
Форма Стик
Тематика Реклама
Страна Российская Федерация
Вес 5 г

Спасибо!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.