Lines Matching refs:param

268 static int pgsql_stmt_param_hook(pdo_stmt_t *stmt, struct pdo_bound_param_data *param,  in pgsql_stmt_param_hook()  argument
273 if (stmt->supports_placeholders == PDO_PLACEHOLDER_NAMED && param->is_param) { in pgsql_stmt_param_hook()
276 if (param->driver_data) { in pgsql_stmt_param_hook()
277 efree(param->driver_data); in pgsql_stmt_param_hook()
283 if (param->name) { in pgsql_stmt_param_hook()
284 if (ZSTR_VAL(param->name)[0] == '$') { in pgsql_stmt_param_hook() local
285 param->paramno = ZEND_ATOL(ZSTR_VAL(param->name) + 1); in pgsql_stmt_param_hook()
291 param->name)) != NULL) { in pgsql_stmt_param_hook()
292 param->paramno = ZEND_ATOL(ZSTR_VAL(namevar) + 1); in pgsql_stmt_param_hook()
293 param->paramno--; in pgsql_stmt_param_hook()
295 pdo_pgsql_error_stmt_msg(stmt, 0, "HY093", ZSTR_VAL(param->name)); in pgsql_stmt_param_hook()
306 if (!zend_hash_index_exists(stmt->bound_param_map, param->paramno)) { in pgsql_stmt_param_hook()
335 if (param->paramno >= 0) { in pgsql_stmt_param_hook()
345 if (Z_ISREF(param->parameter)) { in pgsql_stmt_param_hook()
346 parameter = Z_REFVAL(param->parameter); in pgsql_stmt_param_hook()
348 parameter = &param->parameter; in pgsql_stmt_param_hook()
351 if (PDO_PARAM_TYPE(param->param_type) == PDO_PARAM_LOB && in pgsql_stmt_param_hook()
358 pdo_pgsql_bound_param *P = param->driver_data; in pgsql_stmt_param_hook()
362 param->driver_data = P; in pgsql_stmt_param_hook()
365 S->param_values[param->paramno] = (char*)&P->oid; in pgsql_stmt_param_hook()
366 S->param_lengths[param->paramno] = sizeof(P->oid); in pgsql_stmt_param_hook()
367 S->param_formats[param->paramno] = 1; in pgsql_stmt_param_hook()
368 S->param_types[param->paramno] = OIDOID; in pgsql_stmt_param_hook()
385 if (PDO_PARAM_TYPE(param->param_type) == PDO_PARAM_NULL || in pgsql_stmt_param_hook()
387 S->param_values[param->paramno] = NULL; in pgsql_stmt_param_hook()
388 S->param_lengths[param->paramno] = 0; in pgsql_stmt_param_hook()
390 S->param_values[param->paramno] = Z_TYPE_P(parameter) == IS_TRUE ? "t" : "f"; in pgsql_stmt_param_hook()
391 S->param_lengths[param->paramno] = 1; in pgsql_stmt_param_hook()
392 S->param_formats[param->paramno] = 0; in pgsql_stmt_param_hook()
395 S->param_values[param->paramno] = Z_STRVAL_P(parameter); in pgsql_stmt_param_hook()
396 S->param_lengths[param->paramno] = Z_STRLEN_P(parameter); in pgsql_stmt_param_hook()
397 S->param_formats[param->paramno] = 0; in pgsql_stmt_param_hook()
400 if (PDO_PARAM_TYPE(param->param_type) == PDO_PARAM_LOB) { in pgsql_stmt_param_hook()
401 S->param_types[param->paramno] = 0; in pgsql_stmt_param_hook()
402 S->param_formats[param->paramno] = 1; in pgsql_stmt_param_hook()
404 S->param_types[param->paramno] = 0; in pgsql_stmt_param_hook()
409 } else if (param->is_param && event_type == PDO_PARAM_EVT_NORMALIZE) { in pgsql_stmt_param_hook()
411 if (PDO_PARAM_TYPE(param->param_type) == PDO_PARAM_BOOL && in pgsql_stmt_param_hook()
412 ((param->param_type & PDO_PARAM_INPUT_OUTPUT) != PDO_PARAM_INPUT_OUTPUT)) { in pgsql_stmt_param_hook()
413 const char *s = zend_is_true(&param->parameter) ? "t" : "f"; in pgsql_stmt_param_hook()
414 param->param_type = PDO_PARAM_STR; in pgsql_stmt_param_hook()
415 zval_ptr_dtor(&param->parameter); in pgsql_stmt_param_hook()
416 ZVAL_STRINGL(&param->parameter, s, 1); in pgsql_stmt_param_hook()