BASE . LOG, 'log_file_id' => $LOG_FILE_ID, 'log_per_date' => true, ]); // db connection and attach logger $db = new CoreLibs\DB\IO(DB_CONFIG, $log); $db->log->debug('START', '=============================>'); $PAGE_NAME = 'TEST CLASS: DB QUERY PLACEHOLDER'; print ""; print "
" . print_r(pg_version($dbh), true) . "
" . print_r($db->dbGetReturningExt(), true) . "|
" . print_r($db->dbGetReturningArray(), true) . "|
" . "ERROR: " . $db->dbGetLastError(true) . "
"; echo "
"; // test connectors: = , <> () for query detection // convert placeholder tests // ? -> $n // :name -> $n // other way around (just visual) $test_queries = [ 'skip' => [ 'query' => <<[], 'direction' => 'pg', ], 'a?' => [ 'query' => << [\CoreLibs\Create\Uids::uniqIdShort(), 'string A-1', 1234], 'direction' => 'pg', ], 'b:' => [ 'query' => << [ ':test' => \CoreLibs\Create\Uids::uniqIdShort(), ':string_a' => 'string B-1', ':number_a' => 5678 ], 'direction' => 'pg', ], ]; $db->dbSetConvertPlaceholder(true); foreach ($test_queries as $info => $data) { $query = $data['query']; $params = $data['params']; $direction = $data['direction']; // print "[$info] Convert: " // . Support::printAr(ConvertPlaceholder::convertPlaceholderInQuery($query, $params, $direction)) // . "
"; if ($db->dbCheckQueryForSelect($query)) { $row = $db->dbReturnRowParams($query, $params); print "[$info] SELECT: " . Support::prAr($row) . "
"; } else { $db->dbExecParams($query, $params); } print "[$info] " . Support::printAr($db->dbGetPlaceholderConverted()) . "
"; echo "
"; } echo "dbReturn read:
"; while ( is_array($res = $db->dbReturnParams( <<"; } print "CursorExt: " . Support::prAr($db->dbGetCursorExt(<< dbReturnRowParams(<< dbGetPlaceholderConverted()) . "
"; echo "dbReturn read LIKE:
"; while ( is_array($res = $db->dbReturnParams( <<"; } print ""; $db->log->debug('DEBUGEND', '==================================== [END]'); // __END__