X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FDatabase%2FDBA.php;h=097f1b756a19367574c35352029e772d94e654ce;hb=07ef1edfd6baefa10c22c44a4f85bad3d0034e8b;hp=babc4500eb0c24a568a50c1823523879002b6d02;hpb=07ccfb212b99441a6dabdf6a0a5b6eb540bcbe7f;p=friendica.git diff --git a/src/Database/DBA.php b/src/Database/DBA.php index babc4500eb..097f1b756a 100644 --- a/src/Database/DBA.php +++ b/src/Database/DBA.php @@ -1,6 +1,6 @@ getConnection(); } + /** + * Return the database driver string + * + * @return string with either "pdo" or "mysqli" + */ + public static function getDriver() + { + return DI::dba()->getDriver(); + } + /** * Returns the MySQL server version string * @@ -173,7 +183,7 @@ class DBA /** * Executes a prepared statement that returns data - * Example: $r = p("SELECT * FROM `item` WHERE `guid` = ?", $guid); + * Example: $r = p("SELECT * FROM `post` WHERE `guid` = ?", $guid); * * Please only use it with complicated queries. * For all regular queries please use DBA::select or DBA::exists @@ -280,16 +290,16 @@ class DBA /** * Insert a row into a table * - * @param string|array $table Table name or array [schema => table] - * @param array $param parameter array - * @param bool $on_duplicate_update Do an update on a duplicate entry + * @param string|array $table Table name or array [schema => table] + * @param array $param parameter array + * @param int $duplicate_mode What to do on a duplicated entry * * @return boolean was the insert successful? * @throws \Exception */ - public static function insert($table, $param, $on_duplicate_update = false) + public static function insert($table, array $param, int $duplicate_mode = Database::INSERT_DEFAULT) { - return DI::dba()->insert($table, $param, $on_duplicate_update); + return DI::dba()->insert($table, $param, $duplicate_mode); } /** @@ -378,9 +388,6 @@ class DBA * * @param string|array $table Table name * @param array $conditions Field condition(s) - * @param array $options - * - cascade: If true we delete records in other tables that depend on the one we're deleting through - * relations (default: true) * * @return boolean was the delete successful? * @throws \Exception @@ -468,7 +475,7 @@ class DBA * @return boolean|object * * Example: - * $table = "item"; + * $table = "post"; * $fields = array("id", "uri", "uid", "network"); * * $condition = array("uid" => 1, "network" => 'dspr'); @@ -495,7 +502,7 @@ class DBA * @return int * * Example: - * $table = "item"; + * $table = "post"; * * $condition = ["uid" => 1, "network" => 'dspr']; * or: @@ -757,13 +764,27 @@ class DBA /** * Fills an array with data from a query * - * @param object $stmt statement object - * @param bool $do_close + * @param object $stmt statement object + * @param bool $do_close Close database connection after last row + * @param int $count maximum number of rows to be fetched + * * @return array Data array */ - public static function toArray($stmt, $do_close = true) + public static function toArray($stmt, $do_close = true, int $count = 0) + { + return DI::dba()->toArray($stmt, $do_close, $count); + } + + /** + * Cast field types according to the table definition + * + * @param string $table + * @param array $fields + * @return array casted fields + */ + public static function castFields(string $table, array $fields) { - return DI::dba()->toArray($stmt, $do_close); + return DI::dba()->castFields($table, $fields); } /**