Khushang Bhavnagarwala Khushang Bhavnagarwala - 6 months ago 81
PHP Question

How to execute custom query in cakephp 3.x

Custom query execution in cakephp. I have applied below code.

$conn = ConnectionManager::get('default');

$rs = $conn->query('SELECT * FROM customers');


It gives me blank array though
customers
table has 20 records.

Please suggest me some solution.

Thanks.

MSS MSS
Answer

It's not recommended but somtimes there is no other way! :

  1. You should mention namespace of connection manger

    use Cake\Datasource\ConnectionManager;
    
  2. Get/initialize a connection

    $conn = ConnectionManager::get('default');
    
  3. Execute SQL with something like this

    $stmt = $conn->execute('SELECT * FROM customers');
    
  4. Fetch the results

    $results = $stmt ->fetchAll('assoc');
    

See also