具有过滤器的数据库类

时间:2019-06-28 08:57:25

标签: php mysql oop

我正在构建自己的CMS,并为此使用了自己的Database类。 在某些框架中,有一种方法可以在另一个函数上做一个函数

$firstValues = $this-db->query('your query')->first();

-> first()我需要什么样的课程。 有没有办法在PHP做到这一点?我需要使用Abstract类吗?有人举榜吗?

如果您需要更多信息,请问我! 感谢您的帮助!

汤姆

2 个答案:

答案 0 :(得分:0)

  

-> first()我需要什么样的类。

大多数框架都提供“查询生成器”类,以生成和执行SQL语句,而无需手动编写SQL。

  

php中有没有一种方法可以做到这一点?

是的,只需选择一个查询生成器:

  

我需要使用Abstract类吗?

  

有人举榜吗?

Illuminate数据库(Laravel):

myList2 = [value for (index, value) in enumerate(myList2) if index not in toRemove]

CakePHP:

$userRow = Capsule::table('users')->where('votes', '>', 100)->get();

在后台,$userRow = $connection->newQuery() ->from('users') ->select('*') ->where(['votes >' => 20]) ->execute() ->fetch('assoc'); 方法仅获取第一行。

PDO示例:

first()

答案 1 :(得分:0)

您必须在方法之间传递$ this。 这是一些示例:

Class Db {

   private $_query_result;

   public function query($query_string = '')
   {
         // make your query or smth


         // save for example array of results
         $this->_query_result = $your_query_result;
         return $this;
   }

   public function first() 
   {
         return array_shift($this->_query_result);
   }
}