Esempio n. 1
0
/**
 * CacheExecute: cached Execute
 *
 * @param int timeout count of seconds for cache expiry
 * @param string statement String query to execute
 * @param array vars Array of variables to bind [optional]
 * @return ResultSet|null object or false if fail
 */
PHP_METHOD(ADOdb_Connection, cacheExecute) {

    zval *vars = NULL;
    zval *statement = NULL;
    zval *timeout_param = NULL, *statement_param = NULL, *vars_param = NULL, *_0, *_1;
    int timeout;

    ZEPHIR_MM_GROW();
    zephir_fetch_params(1, 2, 1, &timeout_param, &statement_param, &vars_param);

    timeout = zephir_get_intval(timeout_param);
    zephir_get_strval(statement, statement_param);
    if (!vars_param) {
        ZEPHIR_INIT_VAR(vars);
        array_init(vars);
    } else {
        zephir_get_arrval(vars, vars_param);
    }


    object_init_ex(return_value, adodb_resultset_ce);
    ZEPHIR_INIT_VAR(_0);
    ZEPHIR_INIT_VAR(_1);
    ZVAL_LONG(_1, timeout);
    zephir_call_method_p3(_0, this_ptr, "cachequery", _1, statement, vars);
    zephir_call_method_p1_noret(return_value, "__construct", _0);
    RETURN_MM();

}
Esempio n. 2
0
/**
 * CacheGetAll: cached GetAll
 *
 * @param int timeout count of seconds for cache expiry
 * @param string statement String query to execute
 * @param array vars Array of variables to bind [optional]
 * @return array Array of results
 */
PHP_METHOD(ADOdb_Connection, cacheGetAll) {

    zval *vars = NULL;
    zval *statement = NULL;
    zval *timeout_param = NULL, *statement_param = NULL, *vars_param = NULL, *st, *_0;
    int timeout;

    ZEPHIR_MM_GROW();
    zephir_fetch_params(1, 2, 1, &timeout_param, &statement_param, &vars_param);

    timeout = zephir_get_intval(timeout_param);
    zephir_get_strval(statement, statement_param);
    if (!vars_param) {
        ZEPHIR_INIT_VAR(vars);
        array_init(vars);
    } else {
        zephir_get_arrval(vars, vars_param);
    }


    ZEPHIR_INIT_VAR(_0);
    ZVAL_LONG(_0, timeout);
    ZEPHIR_INIT_VAR(st);
    zephir_call_method_p3(st, this_ptr, "cachequery", _0, statement, vars);
    zephir_call_method(return_value, st, "fetchall");
    RETURN_MM();

}
Esempio n. 3
0
/**
 * Adds a route to the router that only match if the HTTP method is HEAD
 *
 * @param string pattern
 * @param string/array paths
 * @return Test\Router\Route
 */
PHP_METHOD(Test_Router, addHead) {

    zval *pattern, *paths = NULL, *_0;

    ZEPHIR_MM_GROW();
    zephir_fetch_params(1, 1, 1, &pattern, &paths);

    if (!paths) {
        paths = ZEPHIR_GLOBAL(global_null);
    }


    ZEPHIR_INIT_VAR(_0);
    ZVAL_STRING(_0, "HEAD", 1);
    zephir_call_method_p3(return_value, this_ptr, "add", pattern, paths, _0);
    RETURN_MM();

}
Esempio n. 4
0
/**
 * CacheGetCol: cached GetCol
 * @param int timeout count of seconds for cache expiry
 * @param string statement String query to execute
 * @param array vars Array of variables to bind [optional]
 * @return array
 */
PHP_METHOD(ADOdb_Connection, cacheGetCol) {

    zval *vars = NULL;
    zval *statement = NULL;
    zval *timeout_param = NULL, *statement_param = NULL, *vars_param = NULL, *col, *val = NULL, *st, *_0 = NULL;
    int timeout;

    ZEPHIR_MM_GROW();
    zephir_fetch_params(1, 2, 1, &timeout_param, &statement_param, &vars_param);

    timeout = zephir_get_intval(timeout_param);
    zephir_get_strval(statement, statement_param);
    if (!vars_param) {
        ZEPHIR_INIT_VAR(vars);
        array_init(vars);
    } else {
        zephir_get_arrval(vars, vars_param);
    }


    ZEPHIR_INIT_VAR(_0);
    ZVAL_LONG(_0, timeout);
    ZEPHIR_INIT_VAR(st);
    zephir_call_method_p3(st, this_ptr, "cachequery", _0, statement, vars);
    ZEPHIR_INIT_VAR(col);
    array_init(col);
    ZEPHIR_INIT_BNVAR(_0);
    ZVAL_LONG(_0, 0);
    ZEPHIR_INIT_VAR(val);
    zephir_call_method_p1(val, st, "fetchcolumn", _0);
    while (1) {
        if (!(zephir_is_true(val))) {
            break;
        }
        zephir_array_append(&col, val, PH_SEPARATE);
        ZEPHIR_INIT_NVAR(_0);
        ZVAL_LONG(_0, 0);
        ZEPHIR_INIT_NVAR(val);
        zephir_call_method_p1(val, st, "fetchcolumn", _0);
    }
    RETURN_CCTOR(col);

}