if (a == 1 && a == 2)
false
, т.к. не может быть одновременно равно и 1 и 2 (может последовательно), так что смело удаляйте весь блок.а
равно одному из списка», можно так:if ([1, 2, 100500].includes(a))
abstract class BaseORM {
protected $table;
protected $db;
public function __construct($db) {
$this->db = $db;
}
public function getById($id) {
$stmt = $this->db->prepare("SELECT * FROM `$this->table`" WHERE id=?);
$stmt->execute([$id]);
return $stmt->fetch();
}
public function getAll() {
return $this->db->query("SELECT * FROM `$this->table`");
}
}
class SliderDB extends BaseORM {
protected $table = 'slider';
}
$slider = new SliderDB($db);
$allSliders = $slider->getAll();
у меня интернет магазин - и там у меня есть список лучших товаров - отдельный список магазинов и отдельный список лучших предложений - и если мне писать каждый метод с каждым именем таблици - мне сказали что я нарушаю правило" не повторйся"! и думал я как же мне быть что бы в переменную таблица записывалась динамично и что бы не было массу методов как то так.
function getTableData($table) {
$list = ['best_offers', 'shops', 'best_products'];
if (!in_array($table, $list)) {
throw new InvalidArgumentException('Table name not found');
}
return $this->db->row('SELECT * FROM `$table`');
}
$data = getTableData('shops');
html для php
- это что за зверь?$links = [
[
'href' => 'link1',
'picture' => 'linkToPic1'
],
[
'href' => 'link2',
'picture' => 'linkToPic2'
],
[
'href' => 'link3',
'picture' => 'linkToPic3'
],
[
'href' => 'link4',
'picture' => 'linkToPic4'
],
];
<? if(count($links) > 0): ?>
<div class="center_x">
<ul>
<? foreach($links as $item): ?>
<li><a href="<?=$item['href']?>"><img src="<?=$item['picture']?>"></a></li>
<? endforeach; ?>
</ul>
</div>
<? endif; ?>
<li>
, которые должны быть обернуты в тег <ul>
, чего вы не сделали. В своем коде я добавил этот тег.