【发布时间】:2018-12-14 01:37:21
【问题描述】:
<?php
// Selects 1
$stmt = $db->prepare("SELECT * FROM mainInfo WHERE type='1' ORDER BY name");
$stmt->execute();
$resultSet = $stmt->get_result();
$result_1 = $resultSet->fetch_all();
// Selects 2
$stmt = $db->prepare("SELECT * FROM mainInfo WHERE type='2' ORDER BY name");
$stmt->execute();
$resultSet = $stmt->get_result();
$result_2 = $resultSet->fetch_all();
// Selects 3
$stmt = $db->prepare("SELECT * FROM mainInfo WHERE type='3' ORDER BY name");
$stmt->execute();
$resultSet = $stmt->get_result();
$result_3 = $resultSet->fetch_all();
我有 3 个单独的选择语句,其中只有“类型”发生变化。 返回的值稍后在其他代码中使用。 我可以制作一个所有 3 种类型只有 1 条语句的类吗? 后面用到:
<?php foreach($result_1 as $item){
echo '
<div class="col-md-3">
<div class="square">
<input name="cb_id[]" class="checkBox" type="checkbox"
value="'.$item[0].'">
<p>'.$item[0].' <br> ' . $item[1] .' <br> ' . $item[2] .
'$<br>Size: ' .$item[4] . ' MB</p>
</div>
</div>';}
?>
<?php foreach($result_2 as $item){
echo '
<div class="col-md-3">
<div class="square">
<input name="cb_id[]" class="checkBox" type="checkbox"
value="'.$item[0].'">
<p>'.$item[0].' <br> ' . $item[1] .' <br> ' . $item[2] .
'$<br>Weight: ' .$item[5] . ' KG</p>
</div>
</div>';}
?>
<?php foreach($result_3 as $item){
echo '
<div class="col-md-3">
<div class="square">
<input name="cb_id[]" class="checkBox" type="checkbox"
value="'.$item[0].'">
<p>'.$item[0].' <br> ' . $item[1] .' <br> ' . $item[2] .
'$<br>Dim: ' .$item[6] . 'X' .$item[7] . 'X' .$item[8] . '</p>
</div>
</div>';}
?>
我自己对此感到困惑,所以感谢任何帮助
【问题讨论】:
-
为什么不只是一个函数呢?为什么要上课?
-
我认为这里的函数是谨慎的。它将
Type作为输入,并且将是您的sql so you couldbindparam中的一个参数。然后你可以调用函数并传递类型。该函数可能是类中的一个方法,但在不了解您的代码的情况下,我无法猜测这里的类有什么意义(也许是maininfo类?) -
如果你想通过一个类,然后创建一个类文件并创建你需要定义一个类的地方并定义一个公共函数,你可以在其中输入 1、2、3,... 和返回需要从前端捕获的数组并以表格形式显示。