mirror of
https://github.com/Icinga/icingaweb2.git
synced 2025-07-29 16:54:04 +02:00
Add "Fetchable" interface for classes providing data retrieval
Classes for retrieving data must implement the Fetchable interface which defines the usual fetch*() functions.
This commit is contained in:
parent
2cc3823a95
commit
c083747f67
48
library/Icinga/Data/Fetchable.php
Normal file
48
library/Icinga/Data/Fetchable.php
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Icinga\Data;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Interface for retrieving data
|
||||||
|
*/
|
||||||
|
interface Fetchable
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Retrieve an array containing all rows of the result set
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
public function fetchAll();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fetch the first row of the result set
|
||||||
|
*
|
||||||
|
* @return mixed
|
||||||
|
*/
|
||||||
|
public function fetchRow();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fetch a column of all rows of the result set as an array
|
||||||
|
*
|
||||||
|
* @param int $columnIndex Index of the column to fetch
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
public function fetchColumn($columnIndex = 0);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fetch the first column of the first row of the result set
|
||||||
|
*
|
||||||
|
* @return string
|
||||||
|
*/
|
||||||
|
public function fetchOne();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fetch all rows of the result set as an array of key-value pairs
|
||||||
|
*
|
||||||
|
* The first column is the key, the second column is the value.
|
||||||
|
*
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
public function fetchPairs();
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user