我目前有一个方法,可以使用SQL语句查找所有卡片以查找所有结果。它看起来如下:
<?php $cards = find_all_cards();
foreach {$cards as $card} echo "card->username";
?>
我可以用它来一张一张地列出所有卡片,但如果我有2列,我就不能这样做,因为我需要创建一个新行。理想情况下,我会在第一列填充一半结果,第二列填充另一半。
此外,我希望能够使用过滤器对结果进行排序,是通过php完成的吗?因此,例如按升序用户名排序(我还有更多可以排序的字段)
功能:
public static function find_all() {
return static::find_by_sql("SELECT * FROM ".static::$table_name);
}
public static function find_by_sql($sql=""){
global $database;
$result_set = $database->query($sql);
$object_array = array();
while ($row = $database->fetch_array($result_set)) {
$object_array[]=static::instantiate($row);
}
return $object_array;
}
private static function instantiate($record){
$class_name = get_called_class();
$object = new $class_name;
foreach($record as $attribute=>$value) {
if($object->has_attribute($attribute)) {
$object->$attribute = $value;
}
}
答案 0 :(得分:1)
这有什么帮助吗? [PHP doc modulo]:http://php.net/manual/fr/language.operators.arithmetic.php编辑:在阅读完最后一条评论/编辑后,您似乎可以使用%运算符:您的HTML提供&lt; div class =&#34; container contclass&#34; &GT;&LT; div class =&#34; card-box&#34; &gt;您的数据&lt; / div&gt;&lt; / div&gt;,所以计算查询的结果,如果%2然后在CSS中插入换行符/清除