What is happening in Codeigniter when using the delete from array?

Here it is :
$result = ($this->db->where('deal_id', $deal_id)
 ->where('supplier_id', $supplier_id)->delete(['deals_suppliers', 'deals_suppliers_tp', 'deals_products_price_dates']) );

$result is NULL ! despite the fact that everything is removed correctly. without errors.

here's how :

$result = $this->db->where('deal_id', $deal_id)
 ->where('supplier_id', $supplier_id)->delete('deals_suppliers');

 $result1 = ($this->db->where('deal_id', $deal_id)
 ->where('supplier_id', $supplier_id)->delete('deals_suppliers_tp') );

 $result2 = ($this->db->where('deal_id', $deal_id)
 ->where('supplier_id', $supplier_id)->delete('deals_products_price_dates') );

 return ($result && $result1 && $result2);

have 3 TRUE results and ,accordingly , the whole method returns TRUE.

at the docks of the English language is written :

delete([$table = "[, $where = "[, $limit = NULL[, $reset_data = TRUE]]]])
$table (mixed) – The table(s) to delete from; string or array
$where (string) – The WHERE clause
$limit (int) – The LIMIT clause
$reset_data (bool) – TRUE to reset the query “write” clause
CI_DB_query_builder instance (method chaining) or FALSE on failure
Return type:

Ie we have to always TRUE upon successful removal. What in the world?
Thank you.
July 8th 19 at 12:13

Find more questions by tags CodeIgniterMySQLPHP