PHP_METHOD(Test_Fibonnaci, fibArray2) { int i = 0, n = 0; zval fib, _0, _1$$3, _2$$3, _3$$3; zval this_zv; zval *this_ptr = getThis(); if (EXPECTED(this_ptr)) { ZVAL_OBJ(&this_zv, Z_OBJ_P(this_ptr)); this_ptr = &this_zv; } else this_ptr = NULL; ZVAL_UNDEF(&fib); ZVAL_UNDEF(&_0); ZVAL_UNDEF(&_1$$3); ZVAL_UNDEF(&_2$$3); ZVAL_UNDEF(&_3$$3); ZEPHIR_MM_GROW(); ZEPHIR_INIT_VAR(&fib); zephir_create_array(&fib, 2, 0 TSRMLS_CC); ZEPHIR_INIT_VAR(&_0); ZVAL_LONG(&_0, 0); zephir_array_fast_append(&fib, &_0); ZEPHIR_INIT_NVAR(&_0); ZVAL_LONG(&_0, 1); zephir_array_fast_append(&fib, &_0); i = 2; n = 10; while (1) { if (!(i < n)) { break; } zephir_array_fetch_long(&_1$$3, &fib, (i - 1), PH_NOISY | PH_READONLY, "test/fibonnaci.zep", 67 TSRMLS_CC); zephir_array_fetch_long(&_2$$3, &fib, (i - 2), PH_NOISY | PH_READONLY, "test/fibonnaci.zep", 67 TSRMLS_CC); ZEPHIR_INIT_LNVAR(_3$$3); zephir_add_function(&_3$$3, &_1$$3, &_2$$3); zephir_array_update_long(&fib, i, &_3$$3, PH_COPY | PH_SEPARATE ZEPHIR_DEBUG_PARAMS_DUMMY); i++; } RETURN_CCTOR(fib); }
PHP_METHOD(Test_NativeArray, testArrayMultipleAccess1) { zval *_0; zval *a, *b, *_1; ZEPHIR_MM_GROW(); ZEPHIR_INIT_VAR(a); array_init_size(a, 2); ZEPHIR_INIT_VAR(_0); array_init_size(_0, 3); add_index_stringl(_0, 0, SL("a"), 1); add_index_stringl(_0, 1, SL("b"), 1); zephir_array_update_long(&a, 0, &_0, PH_COPY, "test/nativearray.zep", 312); zephir_array_fetch_long(&_1, a, 0, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&b, _1, 0, PH_NOISY | PH_READONLY TSRMLS_CC); RETURN_CTOR(b); }
PHP_METHOD(Cake_Core_Functions, pluginSplit) { zend_bool dotAppend; zval *name_param = NULL, *dotAppend_param = NULL, *plugin_param = NULL, _0, *_1, *parts, *_2; zval *name = NULL, *plugin = NULL; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 1, 2, &name_param, &dotAppend_param, &plugin_param); zephir_get_strval(name, name_param); if (!dotAppend_param) { dotAppend = 0; } else { dotAppend = zephir_get_boolval(dotAppend_param); } if (!plugin_param) { ZEPHIR_INIT_VAR(plugin); ZVAL_EMPTY_STRING(plugin); } else { zephir_get_strval(plugin, plugin_param); } ZEPHIR_SINIT_VAR(_0); ZVAL_STRING(&_0, ".", 0); ZEPHIR_INIT_VAR(_1); zephir_fast_strpos(_1, name, &_0, 0 ); if (!ZEPHIR_IS_FALSE_IDENTICAL(_1)) { ZEPHIR_INIT_VAR(parts); zephir_fast_explode_str(parts, SL("."), name, 2 TSRMLS_CC); if (dotAppend) { ZEPHIR_INIT_VAR(_2); ZVAL_STRING(_2, ".", 1); zephir_array_update_long(&parts, 0, &_2, PH_COPY | PH_SEPARATE, "cake/Core/Functions.zep", 12); } RETURN_CCTOR(parts); } zephir_create_array(return_value, 2, 0 TSRMLS_CC); zephir_array_fast_append(return_value, plugin); zephir_array_fast_append(return_value, name); RETURN_MM(); }
PHP_METHOD(Test_Oo_ExtendPdoClass, __construct) { zval *_0; int ZEPHIR_LAST_CALL_STATUS; zval *dsn_param = NULL, *username_param = NULL, *password_param = NULL, *attrs = NULL, *_1; zval *dsn = NULL, *username = NULL, *password = NULL; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 1, 3, &dsn_param, &username_param, &password_param, &attrs); zephir_get_strval(dsn, dsn_param); if (!username_param) { ZEPHIR_INIT_VAR(username); ZVAL_EMPTY_STRING(username); } else { zephir_get_strval(username, username_param); } if (!password_param) { ZEPHIR_INIT_VAR(password); ZVAL_EMPTY_STRING(password); } else { zephir_get_strval(password, password_param); } if (!attrs) { ZEPHIR_INIT_VAR(attrs); array_init(attrs); } else { ZEPHIR_SEPARATE_PARAM(attrs); } ZEPHIR_INIT_VAR(_0); zephir_create_array(_0, 1, 0 TSRMLS_CC); ZEPHIR_INIT_VAR(_1); ZVAL_STRING(_1, "Test\\PdoStatement", 1); zephir_array_fast_append(_0, _1); zephir_array_update_long(&attrs, 13, &_0, PH_COPY | PH_SEPARATE ZEPHIR_DEBUG_PARAMS_DUMMY); ZEPHIR_CALL_PARENT(NULL, test_oo_extendpdoclass_ce, this_ptr, "__construct", NULL, 0, dsn, username, password, attrs); zephir_check_call_status(); ZEPHIR_MM_RESTORE(); }
/** * Phalcon\Cache\Backend\Memcache constructor * * @param Phalcon\Cache\FrontendInterface frontend * @param array options */ PHP_METHOD(Phalcon_Cache_Backend_Libmemcached, __construct) { zval *_0$$4; int ZEPHIR_LAST_CALL_STATUS; zephir_fcall_cache_entry *_2 = NULL; zval *frontend, *options = NULL, *servers = NULL, *_1$$5; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 1, 1, &frontend, &options); if (!options) { ZEPHIR_CPY_WRT(options, ZEPHIR_GLOBAL(global_null)); } else { ZEPHIR_SEPARATE_PARAM(options); } if (Z_TYPE_P(options) != IS_ARRAY) { ZEPHIR_INIT_NVAR(options); array_init(options); } if (!(zephir_array_isset_string(options, SS("servers")))) { ZEPHIR_INIT_VAR(servers); zephir_create_array(servers, 1, 0 TSRMLS_CC); ZEPHIR_INIT_VAR(_0$$4); zephir_create_array(_0$$4, 3, 0 TSRMLS_CC); add_assoc_stringl_ex(_0$$4, SS("host"), SL("127.0.0.1"), 1); add_assoc_long_ex(_0$$4, SS("port"), 11211); add_assoc_long_ex(_0$$4, SS("weight"), 1); zephir_array_update_long(&servers, 0, &_0$$4, PH_COPY ZEPHIR_DEBUG_PARAMS_DUMMY); zephir_array_update_string(&options, SL("servers"), &servers, PH_COPY | PH_SEPARATE); } if (!(zephir_array_isset_string(options, SS("statsKey")))) { ZEPHIR_INIT_VAR(_1$$5); ZVAL_STRING(_1$$5, "", 1); zephir_array_update_string(&options, SL("statsKey"), &_1$$5, PH_COPY | PH_SEPARATE); } ZEPHIR_CALL_PARENT(NULL, phalcon_cache_backend_libmemcached_ce, this_ptr, "__construct", &_2, 104, frontend, options); zephir_check_call_status(); ZEPHIR_MM_RESTORE(); }
PHP_METHOD(Test_Flow, testFor31) { int k, v, _0; zval *b; zval *a, *_1 = NULL; ZEPHIR_MM_GROW(); ZEPHIR_INIT_VAR(a); array_init(a); ZEPHIR_INIT_VAR(b); ZVAL_STRING(b, "hello", 1); for (_0 = 0; _0 < Z_STRLEN_P(b); _0++) { k = _0; v = Z_STRVAL_P(b)[_0]; ZEPHIR_INIT_NVAR(_1); ZVAL_LONG(_1, v); zephir_array_update_long(&a, k, &_1, PH_COPY | PH_SEPARATE, "test/flow.zep", 689); } RETURN_CCTOR(a); }
PHP_METHOD(Test_NativeArray, testArrayUpdate1) { zval *a, *_0; ZEPHIR_MM_GROW(); ZEPHIR_INIT_VAR(a); array_init_size(a, 5); ZEPHIR_INIT_VAR(_0); ZVAL_LONG(_0, 1); zephir_array_fast_append(a, _0); ZEPHIR_INIT_BNVAR(_0); ZVAL_LONG(_0, 2); zephir_array_fast_append(a, _0); ZEPHIR_INIT_BNVAR(_0); ZVAL_LONG(_0, 3); zephir_array_fast_append(a, _0); ZEPHIR_INIT_BNVAR(_0); ZVAL_LONG(_0, 4); zephir_array_update_long(&a, 0, &_0, PH_COPY | PH_SEPARATE, "test/nativearray.zep", 361); RETURN_CCTOR(a); }
PHP_METHOD(Test_Flow, testFor18) { zend_bool _1; long _0; zval *c, *_4 = NULL; int a, b, _2, _3; ZEPHIR_MM_GROW(); ZEPHIR_INIT_VAR(c); array_init(c); _3 = 10; _2 = 1; _0 = 0; _1 = 0; if (_2 <= _3) { while (1) { if (_1) { _0++; _2++; if (!(_2 <= _3)) { break; } } else { _1 = 1; } a = _0; b = _2; ZEPHIR_INIT_NVAR(_4); ZVAL_LONG(_4, b); zephir_array_update_long(&c, a, &_4, PH_COPY | PH_SEPARATE, "test/flow.zep", 612); } } RETURN_CCTOR(c); }
PHP_METHOD(Test_Quantum, Harmos) { zend_bool _14, _17, _33, _36; zval *_11 = NULL, *_12 = NULL, *_13 = NULL; zephir_nts_static zephir_fcall_cache_entry *_3 = NULL, *_5 = NULL, *_7 = NULL, *_9 = NULL, *_37 = NULL; int i, j, n, ZEPHIR_LAST_CALL_STATUS, _15, _16, _18, _19, _34, _35; zval *x_param = NULL, *psr, *psi, *p2, *v, *paramater, *fp = NULL, *_0 = NULL, _1 = zval_used_for_init, _2 = zval_used_for_init, *_4 = NULL, *_6 = NULL, *_8 = NULL, *_10 = NULL, *tmp, *_20, *_21, *_22, *_23, *_24, *_25, *_26, *_27, _28 = zval_used_for_init, *_29, *_30, *_31, *_32; double x, dt, dx, k0, item_psr, item_psi; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 1, 0, &x_param); x = zephir_get_doubleval(x_param); dx = 0.02; k0 = (3.0 * 3.14159265358979323846); dt = ((dx * dx) / 4.0); ZEPHIR_INIT_VAR(paramater); array_init_size(paramater, 7); ZEPHIR_INIT_VAR(_0); ZVAL_DOUBLE(_0, dx); zephir_array_fast_append(paramater, _0); ZEPHIR_INIT_BNVAR(_0); ZVAL_DOUBLE(_0, k0); zephir_array_fast_append(paramater, _0); ZEPHIR_INIT_BNVAR(_0); ZVAL_DOUBLE(_0, dt); zephir_array_fast_append(paramater, _0); ZEPHIR_INIT_BNVAR(_0); ZVAL_DOUBLE(_0, x); zephir_array_fast_append(paramater, _0); i = 0; ZEPHIR_INIT_VAR(psr); array_init(psr); ZEPHIR_INIT_VAR(psi); array_init(psi); ZEPHIR_INIT_VAR(p2); array_init(p2); ZEPHIR_INIT_VAR(v); array_init(v); ZEPHIR_SINIT_VAR(_1); ZVAL_STRING(&_1, "harmos.txt", 0); ZEPHIR_SINIT_VAR(_2); ZVAL_STRING(&_2, "w", 0); ZEPHIR_CALL_FUNCTION(&fp, "fopen", &_3, &_1, &_2); zephir_check_call_status(); if (!(zephir_is_true(fp))) { RETURN_MM_LONG(1); } while (1) { if (!(i <= 751)) { break; } ZEPHIR_SINIT_NVAR(_1); ZVAL_DOUBLE(&_1, (k0 * x)); ZEPHIR_CALL_FUNCTION(&_4, "sin", &_5, &_1); zephir_check_call_status(); ZEPHIR_SINIT_NVAR(_1); ZVAL_DOUBLE(&_1, ((x * x) * 2.0)); ZEPHIR_CALL_FUNCTION(&_6, "exp", &_7, &_1); zephir_check_call_status(); ZEPHIR_INIT_LNVAR(_8); div_function(_8, _4, _6 TSRMLS_CC); item_psi = zephir_get_numberval(_8); ZEPHIR_SINIT_NVAR(_1); ZVAL_DOUBLE(&_1, (k0 * x)); ZEPHIR_CALL_FUNCTION(&_4, "cos", &_9, &_1); zephir_check_call_status(); ZEPHIR_SINIT_NVAR(_1); ZVAL_DOUBLE(&_1, ((x * x) * 2.0)); ZEPHIR_CALL_FUNCTION(&_6, "exp", &_7, &_1); zephir_check_call_status(); ZEPHIR_INIT_LNVAR(_10); div_function(_10, _4, _6 TSRMLS_CC); item_psr = zephir_get_numberval(_10); ZEPHIR_INIT_NVAR(_11); array_init_size(_11, 2); ZEPHIR_INIT_NVAR(_0); ZVAL_DOUBLE(_0, item_psr); zephir_array_fast_append(_11, _0); zephir_array_update_long(&psr, i, &_11, PH_COPY | PH_SEPARATE, "test/quantum.zep", 38); ZEPHIR_INIT_NVAR(_12); array_init_size(_12, 2); ZEPHIR_INIT_NVAR(_0); ZVAL_DOUBLE(_0, item_psi); zephir_array_fast_append(_12, _0); zephir_array_update_long(&psi, i, &_12, PH_COPY | PH_SEPARATE, "test/quantum.zep", 39); ZEPHIR_INIT_NVAR(_13); array_init_size(_13, 2); ZEPHIR_INIT_NVAR(_0); ZVAL_DOUBLE(_0, (double) ((double) (5.0 * x) * x)); zephir_array_fast_append(_13, _0); zephir_array_update_long(&v, i, &_13, PH_COPY | PH_SEPARATE, "test/quantum.zep", 40); x = (x + dx); i++; } i = 1; j = 1; ZEPHIR_INIT_VAR(tmp); array_init_size(tmp, 2); ZEPHIR_INIT_BNVAR(_0); ZVAL_DOUBLE(_0, 2.0); zephir_array_fast_append(tmp, _0); _16 = 20000; _15 = 0; _14 = 0; if (_15 <= _16) { while (1) { if (_14) { _15++; if (!(_15 <= _16)) { break; } } else { _14 = 1; } n = _15; _19 = (751 - 1); _18 = 1; _17 = 0; if (_18 <= _19) { while (1) { if (_17) { _18++; if (!(_18 <= _19)) { break; } } else { _17 = 1; } i = _18; zephir_array_fetch_long(&_20, psr, i, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_21, _20, 0, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_22, paramater, 2, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_23, psi, (i + 1), PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_24, _23, 0, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_25, psi, (i - 1), PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_26, _25, 0, PH_NOISY | PH_READONLY TSRMLS_CC); ZEPHIR_SINIT_NVAR(_1); zephir_add_function(&_1, _24, _26 TSRMLS_CC); zephir_array_fetch_long(&_24, tmp, 0, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_26, psi, i, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_27, _26, 0, PH_NOISY | PH_READONLY TSRMLS_CC); ZEPHIR_SINIT_NVAR(_2); mul_function(&_2, _24, _27 TSRMLS_CC); ZEPHIR_INIT_LNVAR(_8); zephir_sub_function(_8, &_1, &_2 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_1); mul_function(&_1, _22, _8 TSRMLS_CC); zephir_array_fetch_long(&_22, paramater, 0, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_24, paramater, 0, PH_NOISY | PH_READONLY TSRMLS_CC); ZEPHIR_INIT_LNVAR(_8); mul_function(_8, _22, _24 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_2); div_function(&_2, &_1, _8 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_1); zephir_sub_function(&_1, _21, &_2 TSRMLS_CC); zephir_array_fetch_long(&_21, paramater, 2, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_22, v, i, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_24, _22, 0, PH_NOISY | PH_READONLY TSRMLS_CC); ZEPHIR_SINIT_NVAR(_2); mul_function(&_2, _21, _24 TSRMLS_CC); zephir_array_fetch_long(&_21, psi, i, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_24, _21, 0, PH_NOISY | PH_READONLY TSRMLS_CC); ZEPHIR_SINIT_NVAR(_28); mul_function(&_28, &_2, _24 TSRMLS_CC); ZEPHIR_INIT_LNVAR(_8); zephir_add_function(_8, &_1, &_28 TSRMLS_CC); zephir_array_update_multi(&psr, &_8 TSRMLS_CC, SL("ll"), 2, i, 1); zephir_array_fetch_long(&_24, psr, i, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_27, _24, 0, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_29, psr, i, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_30, _29, 1, PH_NOISY | PH_READONLY TSRMLS_CC); ZEPHIR_SINIT_NVAR(_1); mul_function(&_1, _27, _30 TSRMLS_CC); zephir_array_fetch_long(&_27, psi, i, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_30, _27, 0, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_31, psi, i, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_32, _31, 0, PH_NOISY | PH_READONLY TSRMLS_CC); ZEPHIR_SINIT_NVAR(_2); mul_function(&_2, _30, _32 TSRMLS_CC); ZEPHIR_INIT_LNVAR(_8); zephir_add_function(_8, &_1, &_2 TSRMLS_CC); zephir_array_update_long(&p2, i, &_8, PH_COPY | PH_SEPARATE, "test/quantum.zep", 53); } } _35 = (751 - 1); _34 = 1; _33 = 0; if (_34 <= _35) { while (1) { if (_33) { _34++; if (!(_34 <= _35)) { break; } } else { _33 = 1; } j = _34; ZEPHIR_INIT_NVAR(_0); ZVAL_LONG(_0, 0); zephir_array_update_multi(&psr, &_0 TSRMLS_CC, SL("ll"), 2, 0, 1); ZEPHIR_INIT_NVAR(_0); ZVAL_LONG(_0, 0); zephir_array_update_multi(&psr, &_0 TSRMLS_CC, SL("ll"), 2, 751, 1); zephir_array_fetch_long(&_20, psi, j, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_21, _20, 0, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_22, paramater, 2, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_23, psr, (j + 1), PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_24, _23, 1, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_25, psr, (j - 1), PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_26, _25, 1, PH_NOISY | PH_READONLY TSRMLS_CC); ZEPHIR_SINIT_NVAR(_1); zephir_add_function(&_1, _24, _26 TSRMLS_CC); zephir_array_fetch_long(&_24, tmp, 0, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_26, psr, j, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_27, _26, 1, PH_NOISY | PH_READONLY TSRMLS_CC); ZEPHIR_SINIT_NVAR(_2); mul_function(&_2, _24, _27 TSRMLS_CC); ZEPHIR_INIT_LNVAR(_10); zephir_sub_function(_10, &_1, &_2 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_1); mul_function(&_1, _22, _10 TSRMLS_CC); zephir_array_fetch_long(&_22, paramater, 0, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_24, paramater, 0, PH_NOISY | PH_READONLY TSRMLS_CC); ZEPHIR_INIT_LNVAR(_10); mul_function(_10, _22, _24 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_2); div_function(&_2, &_1, _10 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_1); zephir_add_function(&_1, _21, &_2 TSRMLS_CC); zephir_array_fetch_long(&_21, paramater, 2, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_22, v, j, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_24, _22, 0, PH_NOISY | PH_READONLY TSRMLS_CC); ZEPHIR_SINIT_NVAR(_2); mul_function(&_2, _21, _24 TSRMLS_CC); zephir_array_fetch_long(&_21, psr, j, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_24, _21, 1, PH_NOISY | PH_READONLY TSRMLS_CC); ZEPHIR_SINIT_NVAR(_28); mul_function(&_28, &_2, _24 TSRMLS_CC); ZEPHIR_INIT_LNVAR(_10); zephir_sub_function(_10, &_1, &_28 TSRMLS_CC); zephir_array_update_multi(&psi, &_10 TSRMLS_CC, SL("ll"), 2, j, 1); } } _36 = n == 0; if (!(_36)) { _36 = (n % 2000) == 0; } if (_36) { i = 1; while (1) { if (!(i < (751 - 1))) { break; } zephir_array_fetch_long(&_20, p2, i, PH_NOISY | PH_READONLY TSRMLS_CC); ZEPHIR_SINIT_NVAR(_1); ZVAL_STRING(&_1, "%16.8lf %16.8lf %16.8lf \n", 0); ZEPHIR_SINIT_NVAR(_2); ZVAL_DOUBLE(&_2, ((double) i * dx)); ZEPHIR_SINIT_NVAR(_28); ZVAL_DOUBLE(&_28, ((double) n * dt)); ZEPHIR_CALL_FUNCTION(NULL, "fprintf", &_37, fp, &_1, &_2, &_28, _20); zephir_check_call_status(); i = (i + 10); } ZEPHIR_SINIT_NVAR(_1); ZVAL_STRING(&_1, "\n", 0); ZEPHIR_CALL_FUNCTION(NULL, "fprintf", &_37, fp, &_1); zephir_check_call_status(); } j = 1; while (1) { if (!(j < (751 - 1))) { break; } zephir_array_fetch_long(&_20, psi, j, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_21, _20, 1, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_update_multi(&psi, &_21 TSRMLS_CC, SL("ll"), 2, j, 0); zephir_array_fetch_long(&_21, psr, j, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_fetch_long(&_22, _21, 1, PH_NOISY | PH_READONLY TSRMLS_CC); zephir_array_update_multi(&psr, &_22 TSRMLS_CC, SL("ll"), 2, j, 0); j++; } } } RETURN_MM_BOOL(1); }
PHP_METHOD(PhalconPlus_Db_Mysql, __construct) { zval _9; zend_long ZEPHIR_LAST_CALL_STATUS; zval name; zval *di, di_sub, *name_param = NULL, config, dbConfig, _0, options, _3, _4, _5, _1$$3, _2$$4, _6$$5, _7$$5, _8$$5; zval *this_ptr = getThis(); ZVAL_UNDEF(&di_sub); ZVAL_UNDEF(&config); ZVAL_UNDEF(&dbConfig); ZVAL_UNDEF(&_0); ZVAL_UNDEF(&options); ZVAL_UNDEF(&_3); ZVAL_UNDEF(&_4); ZVAL_UNDEF(&_5); ZVAL_UNDEF(&_1$$3); ZVAL_UNDEF(&_2$$4); ZVAL_UNDEF(&_6$$5); ZVAL_UNDEF(&_7$$5); ZVAL_UNDEF(&_8$$5); ZVAL_UNDEF(&name); ZVAL_UNDEF(&_9); ZEPHIR_MM_GROW(); zephir_fetch_params(1, 2, 0, &di, &name_param); if (UNEXPECTED(Z_TYPE_P(name_param) != IS_STRING && Z_TYPE_P(name_param) != IS_NULL)) { zephir_throw_exception_string(spl_ce_InvalidArgumentException, SL("Parameter 'name' must be of the type string") TSRMLS_CC); RETURN_MM_NULL(); } if (EXPECTED(Z_TYPE_P(name_param) == IS_STRING)) { zephir_get_strval(&name, name_param); } else { ZEPHIR_INIT_VAR(&name); ZVAL_EMPTY_STRING(&name); } ZEPHIR_INIT_VAR(&_0); ZVAL_STRING(&_0, "config"); ZEPHIR_CALL_METHOD(&config, di, "get", NULL, 0, &_0); zephir_check_call_status(); ZEPHIR_OBS_VAR(&dbConfig); zephir_read_property_zval(&dbConfig, &config, &name, PH_NOISY_CC); zephir_update_property_zval(this_ptr, SL("di"), di); zephir_update_property_zval(this_ptr, SL("name"), &name); if (zephir_isset_property(&dbConfig, SL("retryTimes"))) { zephir_read_property(&_1$$3, &dbConfig, SL("retryTimes"), PH_NOISY_CC | PH_READONLY); zephir_update_property_zval(this_ptr, SL("retryTimes"), &_1$$3); } if (zephir_isset_property(&dbConfig, SL("retryInterval"))) { zephir_read_property(&_2$$4, &dbConfig, SL("retryInterval"), PH_NOISY_CC | PH_READONLY); zephir_update_property_zval(this_ptr, SL("retryInterval"), &_2$$4); } ZEPHIR_INIT_VAR(&options); zephir_create_array(&options, 3, 0 TSRMLS_CC); zephir_read_property(&_3, &dbConfig, SL("charset"), PH_NOISY_CC | PH_READONLY); ZEPHIR_INIT_VAR(&_4); ZEPHIR_CONCAT_SV(&_4, "SET NAMES ", &_3); zephir_array_update_long(&options, 1002, &_4, PH_COPY ZEPHIR_DEBUG_PARAMS_DUMMY); ZEPHIR_OBS_VAR(&_5); zephir_read_property(&_5, &dbConfig, SL("timeout"), PH_NOISY_CC); zephir_array_update_long(&options, 2, &_5, PH_COPY ZEPHIR_DEBUG_PARAMS_DUMMY); add_index_long(&options, 3, 2); if (zephir_isset_property(&dbConfig, SL("options"))) { zephir_read_property(&_6$$5, &dbConfig, SL("options"), PH_NOISY_CC | PH_READONLY); ZEPHIR_CALL_METHOD(&_7$$5, &_6$$5, "toarray", NULL, 0); zephir_check_call_status(); ZEPHIR_INIT_VAR(&_8$$5); zephir_add_function(&_8$$5, &_7$$5, &options); zephir_update_property_zval(this_ptr, SL("options"), &_8$$5); } else { zephir_update_property_zval(this_ptr, SL("options"), &options); } ZEPHIR_INIT_VAR(&_9); zephir_create_array(&_9, 6, 0 TSRMLS_CC); ZEPHIR_OBS_NVAR(&_5); zephir_read_property(&_5, &dbConfig, SL("host"), PH_NOISY_CC); zephir_array_update_string(&_9, SL("host"), &_5, PH_COPY | PH_SEPARATE); ZEPHIR_OBS_NVAR(&_5); zephir_read_property(&_5, &dbConfig, SL("port"), PH_NOISY_CC); zephir_array_update_string(&_9, SL("port"), &_5, PH_COPY | PH_SEPARATE); ZEPHIR_OBS_NVAR(&_5); zephir_read_property(&_5, &dbConfig, SL("username"), PH_NOISY_CC); zephir_array_update_string(&_9, SL("username"), &_5, PH_COPY | PH_SEPARATE); ZEPHIR_OBS_NVAR(&_5); zephir_read_property(&_5, &dbConfig, SL("password"), PH_NOISY_CC); zephir_array_update_string(&_9, SL("password"), &_5, PH_COPY | PH_SEPARATE); ZEPHIR_OBS_NVAR(&_5); zephir_read_property(&_5, &dbConfig, SL("dbname"), PH_NOISY_CC); zephir_array_update_string(&_9, SL("dbname"), &_5, PH_COPY | PH_SEPARATE); ZEPHIR_OBS_NVAR(&_5); zephir_read_property(&_5, this_ptr, SL("options"), PH_NOISY_CC); zephir_array_update_string(&_9, SL("options"), &_5, PH_COPY | PH_SEPARATE); zephir_update_property_zval(this_ptr, SL("descriptor"), &_9); ZEPHIR_MM_RESTORE(); }
PHP_METHOD(Test_Fannkuch, process) { zend_bool _0, _5$$4, _11$$8; zval *n_param = NULL, *perm = NULL, *perm0 = NULL, *perm1 = NULL, *count = NULL, *temp = NULL, *_3$$3 = NULL, *_4$$6 = NULL, *_9$$4, *_8$$7, *_10$$8 = NULL, *_14$$9, *_15$$14 = NULL, *_16$$15, *_17$$13, *_18$$13 = NULL, *_19$$13; int n, maxFlipsCount, permCount, checksum, i = 0, j = 0, flipsCount = 0, k = 0, r = 0, k2 = 0, _1, _2, _6$$4, _7$$4, _12$$8, _13$$8; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 1, 0, &n_param); n = zephir_get_intval(n_param); maxFlipsCount = 0; permCount = 0; checksum = 0; ZEPHIR_INIT_VAR(perm); array_init(perm); ZEPHIR_INIT_VAR(perm1); array_init(perm1); ZEPHIR_INIT_VAR(count); array_init(count); _2 = n; _1 = 0; _0 = 0; if (_1 <= _2) { while (1) { if (_0) { _1++; if (!(_1 <= _2)) { break; } } else { _0 = 1; } i = _1; ZEPHIR_INIT_NVAR(_3$$3); ZVAL_LONG(_3$$3, i); zephir_array_update_long(&perm1, i, &_3$$3, PH_COPY | PH_SEPARATE ZEPHIR_DEBUG_PARAMS_DUMMY); } } r = n; while (1) { if (0) { break; } while (1) { if (!(r != 1)) { break; } ZEPHIR_INIT_NVAR(_4$$6); ZVAL_LONG(_4$$6, r); zephir_array_update_long(&count, (r - 1), &_4$$6, PH_COPY | PH_SEPARATE ZEPHIR_DEBUG_PARAMS_DUMMY); r--; } _7$$4 = n; _6$$4 = 0; _5$$4 = 0; if (_6$$4 <= _7$$4) { while (1) { if (_5$$4) { _6$$4++; if (!(_6$$4 <= _7$$4)) { break; } } else { _5$$4 = 1; } i = _6$$4; zephir_array_fetch_long(&_8$$7, perm1, i, PH_NOISY | PH_READONLY, "test/fannkuch.zep", 43 TSRMLS_CC); zephir_array_update_long(&perm, i, &_8$$7, PH_COPY | PH_SEPARATE ZEPHIR_DEBUG_PARAMS_DUMMY); } } flipsCount = 0; k = 0; while (1) { zephir_array_fetch_long(&_9$$4, perm, 0, PH_NOISY | PH_READONLY, "test/fannkuch.zep", 48 TSRMLS_CC); if (!(!ZEPHIR_IS_LONG(_9$$4, 0))) { break; } ZEPHIR_OBS_NVAR(_10$$8); zephir_array_fetch_long(&_10$$8, perm, 0, PH_NOISY, "test/fannkuch.zep", 49 TSRMLS_CC); k = zephir_get_intval(_10$$8); k2 = (long) (((zephir_safe_div_long_long(((k + 1)), 2 TSRMLS_CC)) - (double) (1))); _13$$8 = k2; _12$$8 = 0; _11$$8 = 0; if (_12$$8 <= _13$$8) { while (1) { if (_11$$8) { _12$$8++; if (!(_12$$8 <= _13$$8)) { break; } } else { _11$$8 = 1; } i = _12$$8; zephir_array_fetch_long(&temp, perm, i, PH_NOISY | PH_READONLY, "test/fannkuch.zep", 51 TSRMLS_CC); zephir_array_fetch_long(&_14$$9, perm, (k - i), PH_NOISY | PH_READONLY, "test/fannkuch.zep", 51 TSRMLS_CC); zephir_array_update_long(&perm, i, &_14$$9, PH_COPY | PH_SEPARATE ZEPHIR_DEBUG_PARAMS_DUMMY); zephir_array_update_long(&perm, (k - i), &temp, PH_COPY | PH_SEPARATE ZEPHIR_DEBUG_PARAMS_DUMMY); } } flipsCount++; } if (maxFlipsCount < flipsCount) { maxFlipsCount = flipsCount; } if (zephir_safe_mod_long_long(permCount, 2 TSRMLS_CC) == 0) { checksum += flipsCount; } else { checksum -= flipsCount; } while (1) { if (r == n) { zephir_create_array(return_value, 3, 0 TSRMLS_CC); ZEPHIR_INIT_NVAR(_15$$14); ZVAL_LONG(_15$$14, checksum); zephir_array_fast_append(return_value, _15$$14); ZEPHIR_INIT_NVAR(_15$$14); ZVAL_LONG(_15$$14, n); zephir_array_fast_append(return_value, _15$$14); ZEPHIR_INIT_NVAR(_15$$14); ZVAL_LONG(_15$$14, maxFlipsCount); zephir_array_fast_append(return_value, _15$$14); RETURN_MM(); } zephir_array_fetch_long(&perm0, perm1, 0, PH_NOISY | PH_READONLY, "test/fannkuch.zep", 75 TSRMLS_CC); i = 0; while (1) { if (!(i < r)) { break; } j = (i + 1); zephir_array_fetch_long(&_16$$15, perm1, j, PH_NOISY | PH_READONLY, "test/fannkuch.zep", 78 TSRMLS_CC); zephir_array_update_long(&perm1, i, &_16$$15, PH_COPY | PH_SEPARATE ZEPHIR_DEBUG_PARAMS_DUMMY); i = j; } zephir_array_update_long(&perm1, r, &perm0, PH_COPY | PH_SEPARATE ZEPHIR_DEBUG_PARAMS_DUMMY); zephir_array_fetch_long(&_17$$13, count, r, PH_NOISY | PH_READONLY, "test/fannkuch.zep", 82 TSRMLS_CC); ZEPHIR_INIT_NVAR(_18$$13); ZVAL_LONG(_18$$13, (zephir_get_numberval(_17$$13) - 1)); zephir_array_update_long(&count, r, &_18$$13, PH_COPY | PH_SEPARATE ZEPHIR_DEBUG_PARAMS_DUMMY); zephir_array_fetch_long(&_19$$13, count, r, PH_NOISY | PH_READONLY, "test/fannkuch.zep", 83 TSRMLS_CC); if (ZEPHIR_GT_LONG(_19$$13, 0)) { break; } r++; } permCount++; } ZEPHIR_MM_RESTORE(); }
PHP_METHOD(PhalconPlus_Db_Mysql, __construct) { zval *_2, *_4; int ZEPHIR_LAST_CALL_STATUS; zval *confName = NULL; zval *di, *confName_param = NULL, *_0, *config = NULL, *dbConfig, *_1, *_3 = NULL, *_5, *_6; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 2, 0, &di, &confName_param); if (unlikely(Z_TYPE_P(confName_param) != IS_STRING && Z_TYPE_P(confName_param) != IS_NULL)) { zephir_throw_exception_string(spl_ce_InvalidArgumentException, SL("Parameter 'confName' must be a string") TSRMLS_CC); RETURN_MM_NULL(); } if (likely(Z_TYPE_P(confName_param) == IS_STRING)) { zephir_get_strval(confName, confName_param); } else { ZEPHIR_INIT_VAR(confName); ZVAL_EMPTY_STRING(confName); } ZEPHIR_INIT_VAR(_0); array_init(_0); zephir_update_property_this(this_ptr, SL("descriptor"), _0 TSRMLS_CC); ZEPHIR_INIT_VAR(_1); ZVAL_STRING(_1, "config", ZEPHIR_TEMP_PARAM_COPY); ZEPHIR_CALL_METHOD(&config, di, "get", NULL, _1); zephir_check_temp_parameter(_1); zephir_check_call_status(); ZEPHIR_OBS_VAR(dbConfig); zephir_read_property_zval(&dbConfig, config, confName, PH_NOISY_CC); zephir_update_property_this(this_ptr, SL("di"), di TSRMLS_CC); ZEPHIR_INIT_VAR(_2); zephir_create_array(_2, 6, 0 TSRMLS_CC); ZEPHIR_OBS_VAR(_3); zephir_read_property(&_3, dbConfig, SL("host"), PH_NOISY_CC); zephir_array_update_string(&_2, SL("host"), &_3, PH_COPY | PH_SEPARATE); ZEPHIR_OBS_NVAR(_3); zephir_read_property(&_3, dbConfig, SL("port"), PH_NOISY_CC); zephir_array_update_string(&_2, SL("port"), &_3, PH_COPY | PH_SEPARATE); ZEPHIR_OBS_NVAR(_3); zephir_read_property(&_3, dbConfig, SL("username"), PH_NOISY_CC); zephir_array_update_string(&_2, SL("username"), &_3, PH_COPY | PH_SEPARATE); ZEPHIR_OBS_NVAR(_3); zephir_read_property(&_3, dbConfig, SL("password"), PH_NOISY_CC); zephir_array_update_string(&_2, SL("password"), &_3, PH_COPY | PH_SEPARATE); ZEPHIR_OBS_NVAR(_3); zephir_read_property(&_3, dbConfig, SL("dbname"), PH_NOISY_CC); zephir_array_update_string(&_2, SL("dbname"), &_3, PH_COPY | PH_SEPARATE); ZEPHIR_INIT_VAR(_4); zephir_create_array(_4, 3, 0 TSRMLS_CC); ZEPHIR_OBS_NVAR(_3); zephir_read_property(&_3, dbConfig, SL("charset"), PH_NOISY_CC); ZEPHIR_INIT_VAR(_5); ZEPHIR_CONCAT_SV(_5, "SET NAMES ", _3); zephir_array_update_long(&_4, 1002, &_5, PH_COPY, "phalconplus/Db/Mysql.zep", 29); ZEPHIR_OBS_VAR(_6); zephir_read_property(&_6, dbConfig, SL("timeout"), PH_NOISY_CC); zephir_array_update_long(&_4, 2, &_6, PH_COPY, "phalconplus/Db/Mysql.zep", 29); add_index_long(_4, 3, 2); zephir_array_update_string(&_2, SL("options"), &_4, PH_COPY | PH_SEPARATE); zephir_update_property_this(this_ptr, SL("descriptor"), _2 TSRMLS_CC); ZEPHIR_MM_RESTORE(); }
/** * This method is automatically called in \Phalcon\Db\Adapter\Pdo constructor. * * Call it when you need to restore a database connection. * *<code> * use Phalcon\Db\Adapter\Pdo\Mysql; * * // Make a connection * $connection = new Mysql([ * 'host' => 'localhost', * 'username' => 'sigma', * 'password' => 'secret', * 'dbname' => 'blog', * 'port' => 3306, * ]); * * // Reconnect * $connection->connect(); * </code> */ PHP_METHOD(Phalcon_Db_Adapter_Pdo, connect) { HashTable *_3$$13; HashPosition _2$$13; int ZEPHIR_LAST_CALL_STATUS; zval *descriptor_param = NULL, *username = NULL, *password = NULL, *dsnParts = NULL, *dsnAttributes = NULL, *persistent = NULL, *options = NULL, *key = NULL, *value = NULL, *_6, *_7, *_8, *_9, *_0$$3, **_4$$13, *_5$$14 = NULL; zval *descriptor = NULL, *_1$$3 = NULL; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 0, 1, &descriptor_param); if (!descriptor_param) { ZEPHIR_INIT_VAR(descriptor); array_init(descriptor); } else { zephir_get_arrval(descriptor, descriptor_param); } if (ZEPHIR_IS_EMPTY(descriptor)) { ZEPHIR_OBS_VAR(_0$$3); zephir_read_property_this(&_0$$3, this_ptr, SL("_descriptor"), PH_NOISY_CC); zephir_get_arrval(_1$$3, _0$$3); ZEPHIR_CPY_WRT(descriptor, _1$$3); } ZEPHIR_OBS_VAR(username); if (zephir_array_isset_string_fetch(&username, descriptor, SS("username"), 0 TSRMLS_CC)) { zephir_array_unset_string(&descriptor, SS("username"), PH_SEPARATE); } else { ZEPHIR_INIT_NVAR(username); ZVAL_NULL(username); } ZEPHIR_OBS_VAR(password); if (zephir_array_isset_string_fetch(&password, descriptor, SS("password"), 0 TSRMLS_CC)) { zephir_array_unset_string(&descriptor, SS("password"), PH_SEPARATE); } else { ZEPHIR_INIT_NVAR(password); ZVAL_NULL(password); } ZEPHIR_OBS_VAR(options); if (zephir_array_isset_string_fetch(&options, descriptor, SS("options"), 0 TSRMLS_CC)) { zephir_array_unset_string(&descriptor, SS("options"), PH_SEPARATE); } else { ZEPHIR_INIT_NVAR(options); array_init(options); } ZEPHIR_OBS_VAR(persistent); if (zephir_array_isset_string_fetch(&persistent, descriptor, SS("persistent"), 0 TSRMLS_CC)) { if (zephir_is_true(persistent)) { zephir_array_update_long(&options, 12, &ZEPHIR_GLOBAL(global_true), PH_COPY | PH_SEPARATE ZEPHIR_DEBUG_PARAMS_DUMMY); } zephir_array_unset_string(&descriptor, SS("persistent"), PH_SEPARATE); } if (zephir_array_isset_string(descriptor, SS("dialectClass"))) { zephir_array_unset_string(&descriptor, SS("dialectClass"), PH_SEPARATE); } ZEPHIR_OBS_VAR(dsnAttributes); if (!(zephir_array_isset_string_fetch(&dsnAttributes, descriptor, SS("dsn"), 0 TSRMLS_CC))) { ZEPHIR_INIT_VAR(dsnParts); array_init(dsnParts); zephir_is_iterable(descriptor, &_3$$13, &_2$$13, 0, 0, "phalcon/db/adapter/pdo.zep", 154); for ( ; zephir_hash_get_current_data_ex(_3$$13, (void**) &_4$$13, &_2$$13) == SUCCESS ; zephir_hash_move_forward_ex(_3$$13, &_2$$13) ) { ZEPHIR_GET_HMKEY(key, _3$$13, _2$$13); ZEPHIR_GET_HVALUE(value, _4$$13); ZEPHIR_INIT_LNVAR(_5$$14); ZEPHIR_CONCAT_VSV(_5$$14, key, "=", value); zephir_array_append(&dsnParts, _5$$14, PH_SEPARATE, "phalcon/db/adapter/pdo.zep", 152); } ZEPHIR_INIT_NVAR(dsnAttributes); zephir_fast_join_str(dsnAttributes, SL(";"), dsnParts TSRMLS_CC); } ZEPHIR_INIT_VAR(_6); ZVAL_LONG(_6, 2); zephir_array_update_long(&options, 3, &_6, PH_COPY | PH_SEPARATE ZEPHIR_DEBUG_PARAMS_DUMMY); ZEPHIR_INIT_VAR(_7); object_init_ex(_7, php_pdo_get_dbh_ce()); _8 = zephir_fetch_nproperty_this(this_ptr, SL("_type"), PH_NOISY_CC); ZEPHIR_INIT_VAR(_9); ZEPHIR_CONCAT_VSV(_9, _8, ":", dsnAttributes); ZEPHIR_CALL_METHOD(NULL, _7, "__construct", NULL, 0, _9, username, password, options); zephir_check_call_status(); zephir_update_property_this(this_ptr, SL("_pdo"), _7 TSRMLS_CC); RETURN_MM_BOOL(1); }
/** * Returns an array of prepared attributes for Phalcon\Tag helpers * according to the element parameters * * @param array attributes * @param boolean useChecked * @return array */ PHP_METHOD(Phalcon_Forms_Element, prepareAttributes) { int ZEPHIR_LAST_CALL_STATUS; zend_bool useChecked; zval *attributes = NULL, *useChecked_param = NULL, *value = NULL, *name = NULL, *widgetAttributes = NULL, *mergedAttributes = NULL, *defaultAttributes = NULL, *currentValue = NULL, *_0$$10, *_1$$12; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 0, 2, &attributes, &useChecked_param); if (!attributes) { attributes = ZEPHIR_GLOBAL(global_null); } if (!useChecked_param) { useChecked = 0; } else { useChecked = zephir_get_boolval(useChecked_param); } ZEPHIR_OBS_VAR(name); zephir_read_property_this(&name, this_ptr, SL("_name"), PH_NOISY_CC); if (Z_TYPE_P(attributes) != IS_ARRAY) { ZEPHIR_INIT_VAR(widgetAttributes); array_init(widgetAttributes); } else { ZEPHIR_CPY_WRT(widgetAttributes, attributes); } zephir_array_update_long(&widgetAttributes, 0, &name, PH_COPY | PH_SEPARATE ZEPHIR_DEBUG_PARAMS_DUMMY); ZEPHIR_OBS_VAR(defaultAttributes); zephir_read_property_this(&defaultAttributes, this_ptr, SL("_attributes"), PH_NOISY_CC); if (Z_TYPE_P(defaultAttributes) == IS_ARRAY) { ZEPHIR_INIT_VAR(mergedAttributes); zephir_fast_array_merge(mergedAttributes, &(defaultAttributes), &(widgetAttributes) TSRMLS_CC); } else { ZEPHIR_CPY_WRT(mergedAttributes, widgetAttributes); } ZEPHIR_CALL_METHOD(&value, this_ptr, "getvalue", NULL, 0); zephir_check_call_status(); if (Z_TYPE_P(value) != IS_NULL) { if (useChecked) { if (zephir_array_isset_string_fetch(¤tValue, mergedAttributes, SS("value"), 1 TSRMLS_CC)) { if (ZEPHIR_IS_EQUAL(currentValue, value)) { ZEPHIR_INIT_VAR(_0$$10); ZVAL_STRING(_0$$10, "checked", 1); zephir_array_update_string(&mergedAttributes, SL("checked"), &_0$$10, PH_COPY | PH_SEPARATE); } } else { if (zephir_is_true(value)) { ZEPHIR_INIT_VAR(_1$$12); ZVAL_STRING(_1$$12, "checked", 1); zephir_array_update_string(&mergedAttributes, SL("checked"), &_1$$12, PH_COPY | PH_SEPARATE); } zephir_array_update_string(&mergedAttributes, SL("value"), &value, PH_COPY | PH_SEPARATE); } } else { zephir_array_update_string(&mergedAttributes, SL("value"), &value, PH_COPY | PH_SEPARATE); } } RETURN_CCTOR(mergedAttributes); }
/** * This method is automatically called in Phalcon\Db\Adapter\Pdo constructor. * Call it when you need to restore a database connection * *<code> * //Make a connection * $connection = new \Phalcon\Db\Adapter\Pdo\Mysql(array( * 'host' => '192.168.0.11', * 'username' => 'sigma', * 'password' => 'secret', * 'dbname' => 'blog', * )); * * //Reconnect * $connection->connect(); * </code> * * @param array descriptor * @return boolean */ PHP_METHOD(Phalcon_Db_Adapter_Pdo, connect) { int ZEPHIR_LAST_CALL_STATUS; HashTable *_1; HashPosition _0; zval *descriptor = NULL, *username = NULL, *password = NULL, *dsnParts, *dsnAttributes = NULL, *persistent, *options = NULL, *key = NULL, *value = NULL, **_2, *_3 = NULL, *_4, *_5, *_6; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 0, 1, &descriptor); if (!descriptor) { ZEPHIR_CPY_WRT(descriptor, ZEPHIR_GLOBAL(global_null)); } else { ZEPHIR_SEPARATE_PARAM(descriptor); } if (Z_TYPE_P(descriptor) == IS_NULL) { ZEPHIR_OBS_NVAR(descriptor); zephir_read_property_this(&descriptor, this_ptr, SL("_descriptor"), PH_NOISY_CC); } ZEPHIR_OBS_VAR(username); if (zephir_array_isset_string_fetch(&username, descriptor, SS("username"), 0 TSRMLS_CC)) { zephir_array_unset_string(&descriptor, SS("username"), PH_SEPARATE); } else { ZEPHIR_INIT_NVAR(username); ZVAL_NULL(username); } ZEPHIR_OBS_VAR(password); if (zephir_array_isset_string_fetch(&password, descriptor, SS("password"), 0 TSRMLS_CC)) { zephir_array_unset_string(&descriptor, SS("password"), PH_SEPARATE); } else { ZEPHIR_INIT_NVAR(password); ZVAL_NULL(password); } ZEPHIR_OBS_VAR(options); if (zephir_array_isset_string_fetch(&options, descriptor, SS("options"), 0 TSRMLS_CC)) { zephir_array_unset_string(&descriptor, SS("options"), PH_SEPARATE); } else { ZEPHIR_INIT_NVAR(options); array_init(options); } ZEPHIR_OBS_VAR(dsnAttributes); if (!(zephir_array_isset_string_fetch(&dsnAttributes, descriptor, SS("dsn"), 0 TSRMLS_CC))) { ZEPHIR_INIT_VAR(dsnParts); array_init(dsnParts); zephir_is_iterable(descriptor, &_1, &_0, 0, 0, "phalcon/db/adapter/pdo.zep", 130); for ( ; zephir_hash_get_current_data_ex(_1, (void**) &_2, &_0) == SUCCESS ; zephir_hash_move_forward_ex(_1, &_0) ) { ZEPHIR_GET_HMKEY(key, _1, _0); ZEPHIR_GET_HVALUE(value, _2); ZEPHIR_INIT_LNVAR(_3); ZEPHIR_CONCAT_VSV(_3, key, "=", value); zephir_array_append(&dsnParts, _3, PH_SEPARATE, "phalcon/db/adapter/pdo.zep", 128); } ZEPHIR_INIT_NVAR(dsnAttributes); zephir_fast_join_str(dsnAttributes, SL(";"), dsnParts TSRMLS_CC); } ZEPHIR_INIT_VAR(_4); ZVAL_LONG(_4, 2); zephir_array_update_long(&options, 3, &_4, PH_COPY | PH_SEPARATE, "phalcon/db/adapter/pdo.zep", 133); if (zephir_array_isset_string_fetch(&persistent, descriptor, SS("persistent"), 1 TSRMLS_CC)) { if (zephir_is_true(persistent)) { zephir_array_update_long(&options, 12, &ZEPHIR_GLOBAL(global_true), PH_COPY | PH_SEPARATE, "phalcon/db/adapter/pdo.zep", 140); } } ZEPHIR_INIT_VAR(_5); object_init_ex(_5, php_pdo_get_dbh_ce()); _6 = zephir_fetch_nproperty_this(this_ptr, SL("_type"), PH_NOISY_CC); ZEPHIR_INIT_LNVAR(_3); ZEPHIR_CONCAT_VSV(_3, _6, ":", dsnAttributes); ZEPHIR_CALL_METHOD(NULL, _5, "__construct", NULL, 0, _3, username, password, options); zephir_check_call_status(); zephir_update_property_this(this_ptr, SL("_pdo"), _5 TSRMLS_CC); ZEPHIR_MM_RESTORE(); }
PHP_METHOD(Test_Quantum, harmos) { zend_bool _13, _16, _32, _35; zval *_10 = NULL, *_11 = NULL, *_12 = NULL; zephir_fcall_cache_entry *_4 = NULL, *_6 = NULL, *_8 = NULL, *_36 = NULL; int i, j, n, ZEPHIR_LAST_CALL_STATUS, _14, _15, _17, _18, _33, _34; zval *x_param = NULL, *psr, *psi, *p2, *v, *paramater, *fp = NULL, *tmp, *_0 = NULL, _1 = zval_used_for_init, _2 = zval_used_for_init, *_3 = NULL, *_5 = NULL, *_7 = NULL, *_9 = NULL, *_19, *_20, *_21, *_22, *_23, *_24, *_25, *_26, _27 = zval_used_for_init, *_28, *_29, *_30, *_31; double x, dt, dx, k0, item_psr, item_psi; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 1, 0, &x_param); x = zephir_get_doubleval(x_param); dx = 0.02; k0 = (3.0 * 3.14159265358979323846); dt = zephir_safe_div_double_long((dx * dx), 4.0 TSRMLS_CC); ZEPHIR_INIT_VAR(paramater); zephir_create_array(paramater, 4, 0 TSRMLS_CC); ZEPHIR_INIT_VAR(_0); ZVAL_DOUBLE(_0, dx); zephir_array_fast_append(paramater, _0); ZEPHIR_INIT_NVAR(_0); ZVAL_DOUBLE(_0, k0); zephir_array_fast_append(paramater, _0); ZEPHIR_INIT_NVAR(_0); ZVAL_DOUBLE(_0, dt); zephir_array_fast_append(paramater, _0); ZEPHIR_INIT_NVAR(_0); ZVAL_DOUBLE(_0, x); zephir_array_fast_append(paramater, _0); i = 0; ZEPHIR_INIT_VAR(psr); array_init(psr); ZEPHIR_INIT_VAR(psi); array_init(psi); ZEPHIR_INIT_VAR(p2); array_init(p2); ZEPHIR_INIT_VAR(v); array_init(v); ZEPHIR_SINIT_VAR(_1); ZVAL_STRING(&_1, "harmos.txt", 0); ZEPHIR_SINIT_VAR(_2); ZVAL_STRING(&_2, "w", 0); ZEPHIR_CALL_FUNCTION(&fp, "fopen", NULL, 30, &_1, &_2); zephir_check_call_status(); if (!(zephir_is_true(fp))) { RETURN_MM_LONG(1); } while (1) { if (!(i <= 751)) { break; } ZEPHIR_SINIT_NVAR(_1); ZVAL_DOUBLE(&_1, (k0 * x)); ZEPHIR_CALL_FUNCTION(&_3, "sin", &_4, 10, &_1); zephir_check_call_status(); ZEPHIR_SINIT_NVAR(_1); ZVAL_DOUBLE(&_1, ((x * x) * 2.0)); ZEPHIR_CALL_FUNCTION(&_5, "exp", &_6, 1, &_1); zephir_check_call_status(); ZEPHIR_INIT_LNVAR(_7); div_function(_7, _3, _5 TSRMLS_CC); item_psi = zephir_get_numberval(_7); ZEPHIR_SINIT_NVAR(_1); ZVAL_DOUBLE(&_1, (k0 * x)); ZEPHIR_CALL_FUNCTION(&_3, "cos", &_8, 11, &_1); zephir_check_call_status(); ZEPHIR_SINIT_NVAR(_1); ZVAL_DOUBLE(&_1, ((x * x) * 2.0)); ZEPHIR_CALL_FUNCTION(&_5, "exp", &_6, 1, &_1); zephir_check_call_status(); ZEPHIR_INIT_LNVAR(_9); div_function(_9, _3, _5 TSRMLS_CC); item_psr = zephir_get_numberval(_9); ZEPHIR_INIT_NVAR(_10); zephir_create_array(_10, 1, 0 TSRMLS_CC); ZEPHIR_INIT_NVAR(_0); ZVAL_DOUBLE(_0, item_psr); zephir_array_fast_append(_10, _0); zephir_array_update_long(&psr, i, &_10, PH_COPY | PH_SEPARATE, "test/quantum.zep", 39); ZEPHIR_INIT_NVAR(_11); zephir_create_array(_11, 1, 0 TSRMLS_CC); ZEPHIR_INIT_NVAR(_0); ZVAL_DOUBLE(_0, item_psi); zephir_array_fast_append(_11, _0); zephir_array_update_long(&psi, i, &_11, PH_COPY | PH_SEPARATE, "test/quantum.zep", 40); ZEPHIR_INIT_NVAR(_12); zephir_create_array(_12, 1, 0 TSRMLS_CC); ZEPHIR_INIT_NVAR(_0); ZVAL_DOUBLE(_0, (double) ((double) (5.0 * x) * x)); zephir_array_fast_append(_12, _0); zephir_array_update_long(&v, i, &_12, PH_COPY | PH_SEPARATE, "test/quantum.zep", 41); x = (x + dx); i++; } i = 1; j = 1; ZEPHIR_INIT_VAR(tmp); zephir_create_array(tmp, 1, 0 TSRMLS_CC); ZEPHIR_INIT_NVAR(_0); ZVAL_DOUBLE(_0, 2.0); zephir_array_fast_append(tmp, _0); _15 = 20000; _14 = 0; _13 = 0; if (_14 <= _15) { while (1) { if (_13) { _14++; if (!(_14 <= _15)) { break; } } else { _13 = 1; } n = _14; _18 = (751 - 1); _17 = 1; _16 = 0; if (_17 <= _18) { while (1) { if (_16) { _17++; if (!(_17 <= _18)) { break; } } else { _16 = 1; } i = _17; zephir_array_fetch_long(&_19, psr, i, PH_NOISY | PH_READONLY, "test/quantum.zep", 50 TSRMLS_CC); zephir_array_fetch_long(&_20, _19, 0, PH_NOISY | PH_READONLY, "test/quantum.zep", 50 TSRMLS_CC); zephir_array_fetch_long(&_21, paramater, 2, PH_NOISY | PH_READONLY, "test/quantum.zep", 50 TSRMLS_CC); zephir_array_fetch_long(&_22, psi, (i + 1), PH_NOISY | PH_READONLY, "test/quantum.zep", 50 TSRMLS_CC); zephir_array_fetch_long(&_23, _22, 0, PH_NOISY | PH_READONLY, "test/quantum.zep", 50 TSRMLS_CC); zephir_array_fetch_long(&_24, psi, (i - 1), PH_NOISY | PH_READONLY, "test/quantum.zep", 50 TSRMLS_CC); zephir_array_fetch_long(&_25, _24, 0, PH_NOISY | PH_READONLY, "test/quantum.zep", 51 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_1); zephir_add_function_ex(&_1, _23, _25 TSRMLS_CC); zephir_array_fetch_long(&_23, tmp, 0, PH_NOISY | PH_READONLY, "test/quantum.zep", 51 TSRMLS_CC); zephir_array_fetch_long(&_25, psi, i, PH_NOISY | PH_READONLY, "test/quantum.zep", 51 TSRMLS_CC); zephir_array_fetch_long(&_26, _25, 0, PH_NOISY | PH_READONLY, "test/quantum.zep", 51 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_2); mul_function(&_2, _23, _26 TSRMLS_CC); ZEPHIR_INIT_LNVAR(_7); sub_function(_7, &_1, &_2 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_1); mul_function(&_1, _21, _7 TSRMLS_CC); zephir_array_fetch_long(&_21, paramater, 0, PH_NOISY | PH_READONLY, "test/quantum.zep", 51 TSRMLS_CC); zephir_array_fetch_long(&_23, paramater, 0, PH_NOISY | PH_READONLY, "test/quantum.zep", 51 TSRMLS_CC); ZEPHIR_INIT_LNVAR(_7); mul_function(_7, _21, _23 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_2); div_function(&_2, &_1, _7 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_1); sub_function(&_1, _20, &_2 TSRMLS_CC); zephir_array_fetch_long(&_20, paramater, 2, PH_NOISY | PH_READONLY, "test/quantum.zep", 51 TSRMLS_CC); zephir_array_fetch_long(&_21, v, i, PH_NOISY | PH_READONLY, "test/quantum.zep", 51 TSRMLS_CC); zephir_array_fetch_long(&_23, _21, 0, PH_NOISY | PH_READONLY, "test/quantum.zep", 51 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_2); mul_function(&_2, _20, _23 TSRMLS_CC); zephir_array_fetch_long(&_20, psi, i, PH_NOISY | PH_READONLY, "test/quantum.zep", 51 TSRMLS_CC); zephir_array_fetch_long(&_23, _20, 0, PH_NOISY | PH_READONLY, "test/quantum.zep", 51 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_27); mul_function(&_27, &_2, _23 TSRMLS_CC); ZEPHIR_INIT_LNVAR(_7); zephir_add_function_ex(_7, &_1, &_27 TSRMLS_CC); zephir_array_update_multi(&psr, &_7 TSRMLS_CC, SL("ll"), 2, i, 1); zephir_array_fetch_long(&_23, psr, i, PH_NOISY | PH_READONLY, "test/quantum.zep", 53 TSRMLS_CC); zephir_array_fetch_long(&_26, _23, 0, PH_NOISY | PH_READONLY, "test/quantum.zep", 53 TSRMLS_CC); zephir_array_fetch_long(&_28, psr, i, PH_NOISY | PH_READONLY, "test/quantum.zep", 53 TSRMLS_CC); zephir_array_fetch_long(&_29, _28, 1, PH_NOISY | PH_READONLY, "test/quantum.zep", 53 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_1); mul_function(&_1, _26, _29 TSRMLS_CC); zephir_array_fetch_long(&_26, psi, i, PH_NOISY | PH_READONLY, "test/quantum.zep", 53 TSRMLS_CC); zephir_array_fetch_long(&_29, _26, 0, PH_NOISY | PH_READONLY, "test/quantum.zep", 53 TSRMLS_CC); zephir_array_fetch_long(&_30, psi, i, PH_NOISY | PH_READONLY, "test/quantum.zep", 53 TSRMLS_CC); zephir_array_fetch_long(&_31, _30, 0, PH_NOISY | PH_READONLY, "test/quantum.zep", 53 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_2); mul_function(&_2, _29, _31 TSRMLS_CC); ZEPHIR_INIT_LNVAR(_7); zephir_add_function_ex(_7, &_1, &_2 TSRMLS_CC); zephir_array_update_long(&p2, i, &_7, PH_COPY | PH_SEPARATE, "test/quantum.zep", 53); } } _34 = (751 - 1); _33 = 1; _32 = 0; if (_33 <= _34) { while (1) { if (_32) { _33++; if (!(_33 <= _34)) { break; } } else { _32 = 1; } j = _33; ZEPHIR_INIT_NVAR(_0); ZVAL_LONG(_0, 0); zephir_array_update_multi(&psr, &_0 TSRMLS_CC, SL("ll"), 2, 0, 1); ZEPHIR_INIT_NVAR(_0); ZVAL_LONG(_0, 0); zephir_array_update_multi(&psr, &_0 TSRMLS_CC, SL("ll"), 2, 751, 1); zephir_array_fetch_long(&_19, psi, j, PH_NOISY | PH_READONLY, "test/quantum.zep", 58 TSRMLS_CC); zephir_array_fetch_long(&_20, _19, 0, PH_NOISY | PH_READONLY, "test/quantum.zep", 58 TSRMLS_CC); zephir_array_fetch_long(&_21, paramater, 2, PH_NOISY | PH_READONLY, "test/quantum.zep", 58 TSRMLS_CC); zephir_array_fetch_long(&_22, psr, (j + 1), PH_NOISY | PH_READONLY, "test/quantum.zep", 58 TSRMLS_CC); zephir_array_fetch_long(&_23, _22, 1, PH_NOISY | PH_READONLY, "test/quantum.zep", 58 TSRMLS_CC); zephir_array_fetch_long(&_24, psr, (j - 1), PH_NOISY | PH_READONLY, "test/quantum.zep", 58 TSRMLS_CC); zephir_array_fetch_long(&_25, _24, 1, PH_NOISY | PH_READONLY, "test/quantum.zep", 59 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_1); zephir_add_function_ex(&_1, _23, _25 TSRMLS_CC); zephir_array_fetch_long(&_23, tmp, 0, PH_NOISY | PH_READONLY, "test/quantum.zep", 59 TSRMLS_CC); zephir_array_fetch_long(&_25, psr, j, PH_NOISY | PH_READONLY, "test/quantum.zep", 59 TSRMLS_CC); zephir_array_fetch_long(&_26, _25, 1, PH_NOISY | PH_READONLY, "test/quantum.zep", 59 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_2); mul_function(&_2, _23, _26 TSRMLS_CC); ZEPHIR_INIT_LNVAR(_9); sub_function(_9, &_1, &_2 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_1); mul_function(&_1, _21, _9 TSRMLS_CC); zephir_array_fetch_long(&_21, paramater, 0, PH_NOISY | PH_READONLY, "test/quantum.zep", 59 TSRMLS_CC); zephir_array_fetch_long(&_23, paramater, 0, PH_NOISY | PH_READONLY, "test/quantum.zep", 59 TSRMLS_CC); ZEPHIR_INIT_LNVAR(_9); mul_function(_9, _21, _23 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_2); div_function(&_2, &_1, _9 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_1); zephir_add_function_ex(&_1, _20, &_2 TSRMLS_CC); zephir_array_fetch_long(&_20, paramater, 2, PH_NOISY | PH_READONLY, "test/quantum.zep", 59 TSRMLS_CC); zephir_array_fetch_long(&_21, v, j, PH_NOISY | PH_READONLY, "test/quantum.zep", 59 TSRMLS_CC); zephir_array_fetch_long(&_23, _21, 0, PH_NOISY | PH_READONLY, "test/quantum.zep", 59 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_2); mul_function(&_2, _20, _23 TSRMLS_CC); zephir_array_fetch_long(&_20, psr, j, PH_NOISY | PH_READONLY, "test/quantum.zep", 59 TSRMLS_CC); zephir_array_fetch_long(&_23, _20, 1, PH_NOISY | PH_READONLY, "test/quantum.zep", 59 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_27); mul_function(&_27, &_2, _23 TSRMLS_CC); ZEPHIR_INIT_LNVAR(_9); sub_function(_9, &_1, &_27 TSRMLS_CC); zephir_array_update_multi(&psi, &_9 TSRMLS_CC, SL("ll"), 2, j, 1); } } _35 = n == 0; if (!(_35)) { _35 = zephir_safe_mod_long_long(n, 2000 TSRMLS_CC) == 0; } if (_35) { i = 1; while (1) { if (!(i < (751 - 1))) { break; } zephir_array_fetch_long(&_19, p2, i, PH_NOISY | PH_READONLY, "test/quantum.zep", 67 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_1); ZVAL_STRING(&_1, "%16.8lf %16.8lf %16.8lf \n", 0); ZEPHIR_SINIT_NVAR(_2); ZVAL_DOUBLE(&_2, ((double) i * dx)); ZEPHIR_SINIT_NVAR(_27); ZVAL_DOUBLE(&_27, ((double) n * dt)); ZEPHIR_CALL_FUNCTION(NULL, "fprintf", &_36, 57, fp, &_1, &_2, &_27, _19); zephir_check_call_status(); i = (i + 10); } ZEPHIR_SINIT_NVAR(_1); ZVAL_STRING(&_1, "\n", 0); ZEPHIR_CALL_FUNCTION(NULL, "fprintf", &_36, 57, fp, &_1); zephir_check_call_status(); } j = 1; while (1) { if (!(j < (751 - 1))) { break; } zephir_array_fetch_long(&_19, psi, j, PH_NOISY | PH_READONLY, "test/quantum.zep", 76 TSRMLS_CC); zephir_array_fetch_long(&_20, _19, 1, PH_NOISY | PH_READONLY, "test/quantum.zep", 76 TSRMLS_CC); zephir_array_update_multi(&psi, &_20 TSRMLS_CC, SL("ll"), 2, j, 0); zephir_array_fetch_long(&_20, psr, j, PH_NOISY | PH_READONLY, "test/quantum.zep", 77 TSRMLS_CC); zephir_array_fetch_long(&_21, _20, 1, PH_NOISY | PH_READONLY, "test/quantum.zep", 77 TSRMLS_CC); zephir_array_update_multi(&psr, &_21 TSRMLS_CC, SL("ll"), 2, j, 0); j++; } } } RETURN_MM_BOOL(1); }
PHP_METHOD(Test_NativeArray, testArrayUpdate5) { zval _1, _2, _3; zval a, _0; zval *this_ptr = getThis(); ZVAL_UNDEF(&a); ZVAL_UNDEF(&_0); ZVAL_UNDEF(&_1); ZVAL_UNDEF(&_2); ZVAL_UNDEF(&_3); ZEPHIR_MM_GROW(); ZEPHIR_INIT_VAR(&a); zephir_create_array(&a, 3, 0 TSRMLS_CC); ZEPHIR_INIT_VAR(&_0); ZVAL_LONG(&_0, 1); zephir_array_fast_append(&a, &_0); ZEPHIR_INIT_NVAR(&_0); ZVAL_LONG(&_0, 2); zephir_array_fast_append(&a, &_0); ZEPHIR_INIT_NVAR(&_0); ZVAL_LONG(&_0, 3); zephir_array_fast_append(&a, &_0); ZEPHIR_INIT_VAR(&_1); zephir_create_array(&_1, 3, 0 TSRMLS_CC); ZEPHIR_INIT_NVAR(&_0); ZVAL_LONG(&_0, 1); zephir_array_fast_append(&_1, &_0); ZEPHIR_INIT_NVAR(&_0); ZVAL_LONG(&_0, 2); zephir_array_fast_append(&_1, &_0); ZEPHIR_INIT_NVAR(&_0); ZVAL_LONG(&_0, 3); zephir_array_fast_append(&_1, &_0); zephir_array_update_long(&a, 0, &_1, PH_COPY | PH_SEPARATE ZEPHIR_DEBUG_PARAMS_DUMMY); ZEPHIR_INIT_VAR(&_2); zephir_create_array(&_2, 3, 0 TSRMLS_CC); ZEPHIR_INIT_NVAR(&_0); ZVAL_LONG(&_0, 1); zephir_array_fast_append(&_2, &_0); ZEPHIR_INIT_NVAR(&_0); ZVAL_LONG(&_0, 2); zephir_array_fast_append(&_2, &_0); ZEPHIR_INIT_NVAR(&_0); ZVAL_LONG(&_0, 3); zephir_array_fast_append(&_2, &_0); zephir_array_update_long(&a, 1, &_2, PH_COPY | PH_SEPARATE ZEPHIR_DEBUG_PARAMS_DUMMY); ZEPHIR_INIT_VAR(&_3); zephir_create_array(&_3, 3, 0 TSRMLS_CC); ZEPHIR_INIT_NVAR(&_0); ZVAL_LONG(&_0, 1); zephir_array_fast_append(&_3, &_0); ZEPHIR_INIT_NVAR(&_0); ZVAL_LONG(&_0, 2); zephir_array_fast_append(&_3, &_0); ZEPHIR_INIT_NVAR(&_0); ZVAL_LONG(&_0, 3); zephir_array_fast_append(&_3, &_0); zephir_array_update_long(&a, 2, &_3, PH_COPY | PH_SEPARATE ZEPHIR_DEBUG_PARAMS_DUMMY); RETURN_CCTOR(&a); }
PHP_METHOD(Test_Fannkuch, process) { zend_bool _0, _4, _9; zval *n_param = NULL, *perm, *perm0, *perm1, *count, *temp, *_3 = NULL, *_7, *_8 = NULL, *_12, *_13 = NULL, *_14; int n, maxFlipsCount = 0, permCount = 0, checksum = 0, i, j, flipsCount, k, r, k2, _1, _2, _5, _6, _10, _11; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 1, 0, &n_param); n = zephir_get_intval(n_param); ZEPHIR_INIT_VAR(perm); array_init(perm); ZEPHIR_INIT_VAR(perm1); array_init(perm1); ZEPHIR_INIT_VAR(count); array_init(count); _2 = n; _1 = 0; _0 = 0; if (_1 <= _2) { while (1) { if (_0) { _1++; if (!(_1 <= _2)) { break; } } else { _0 = 1; } i = _1; ZEPHIR_INIT_NVAR(_3); ZVAL_LONG(_3, i); zephir_array_update_long(&perm1, i, &_3, PH_COPY | PH_SEPARATE, "test/fannkuch.zep", 27); } } r = n; while (1) { if (0) { break; } while (1) { if (!(r != 1)) { break; } ZEPHIR_INIT_NVAR(_3); ZVAL_LONG(_3, r); zephir_array_update_long(&count, (r - 1), &_3, PH_COPY | PH_SEPARATE, "test/fannkuch.zep", 39); r--; } _6 = n; _5 = 0; _4 = 0; if (_5 <= _6) { while (1) { if (_4) { _5++; if (!(_5 <= _6)) { break; } } else { _4 = 1; } i = _5; zephir_array_fetch_long(&_7, perm1, i, PH_NOISY | PH_READONLY, "test/fannkuch.zep", 43 TSRMLS_CC); zephir_array_update_long(&perm, i, &_7, PH_COPY | PH_SEPARATE, "test/fannkuch.zep", 43); } } flipsCount = 0; k = 0; while (1) { zephir_array_fetch_long(&_7, perm, 0, PH_NOISY | PH_READONLY, "test/fannkuch.zep", 48 TSRMLS_CC); if (!(!ZEPHIR_IS_LONG(_7, 0))) { break; } ZEPHIR_OBS_NVAR(_8); zephir_array_fetch_long(&_8, perm, 0, PH_NOISY, "test/fannkuch.zep", 49 TSRMLS_CC); k = zephir_get_intval(_8); k2 = (((((k + 1)) / 2)) - 1); _11 = k2; _10 = 0; _9 = 0; if (_10 <= _11) { while (1) { if (_9) { _10++; if (!(_10 <= _11)) { break; } } else { _9 = 1; } i = _10; zephir_array_fetch_long(&temp, perm, i, PH_NOISY | PH_READONLY, "test/fannkuch.zep", 51 TSRMLS_CC); zephir_array_fetch_long(&_12, perm, (k - i), PH_NOISY | PH_READONLY, "test/fannkuch.zep", 51 TSRMLS_CC); zephir_array_update_long(&perm, i, &_12, PH_COPY | PH_SEPARATE, "test/fannkuch.zep", 51); zephir_array_update_long(&perm, (k - i), &temp, PH_COPY | PH_SEPARATE, "test/fannkuch.zep", 51); } } flipsCount++; } if (maxFlipsCount < flipsCount) { maxFlipsCount = flipsCount; } if ((permCount % 2) == 0) { checksum += flipsCount; } else { checksum -= flipsCount; } while (1) { if (r == n) { array_init_size(return_value, 5); ZEPHIR_INIT_NVAR(_13); ZVAL_LONG(_13, checksum); zephir_array_fast_append(return_value, _13); ZEPHIR_INIT_NVAR(_13); ZVAL_LONG(_13, n); zephir_array_fast_append(return_value, _13); ZEPHIR_INIT_NVAR(_13); ZVAL_LONG(_13, maxFlipsCount); zephir_array_fast_append(return_value, _13); RETURN_MM(); } zephir_array_fetch_long(&perm0, perm1, 0, PH_NOISY | PH_READONLY, "test/fannkuch.zep", 75 TSRMLS_CC); i = 0; while (1) { if (!(i < r)) { break; } j = (i + 1); zephir_array_fetch_long(&_7, perm1, j, PH_NOISY | PH_READONLY, "test/fannkuch.zep", 78 TSRMLS_CC); zephir_array_update_long(&perm1, i, &_7, PH_COPY | PH_SEPARATE, "test/fannkuch.zep", 78); i = j; } zephir_array_update_long(&perm1, r, &perm0, PH_COPY | PH_SEPARATE, "test/fannkuch.zep", 82); zephir_array_fetch_long(&_12, count, r, PH_NOISY | PH_READONLY, "test/fannkuch.zep", 82 TSRMLS_CC); ZEPHIR_INIT_NVAR(_13); ZVAL_LONG(_13, (zephir_get_numberval(_12) - 1)); zephir_array_update_long(&count, r, &_13, PH_COPY | PH_SEPARATE, "test/fannkuch.zep", 82); zephir_array_fetch_long(&_14, count, r, PH_NOISY | PH_READONLY, "test/fannkuch.zep", 83 TSRMLS_CC); if (ZEPHIR_GT_LONG(_14, 0)) { break; } r++; } permCount++; } ZEPHIR_MM_RESTORE(); }
/** * The meta-data is obtained by reading the column descriptions from the database information schema */ PHP_METHOD(Phalcon_Mvc_Model_MetaData_Strategy_Introspection, getMetaData) { zend_bool _16$$9; HashTable *_8; HashPosition _7; zend_long ZEPHIR_LAST_CALL_STATUS; zval *model, *dependencyInjector, *schema = NULL, *table = NULL, *readConnection = NULL, *columns = NULL, *attributes = NULL, *primaryKeys = NULL, *nonPrimaryKeys = NULL, *completeTable = NULL, *numericTyped = NULL, *notNull = NULL, *fieldTypes = NULL, *automaticDefault = NULL, *identityField = NULL, *fieldBindTypes = NULL, *defaultValues = NULL, *column = NULL, *fieldName = NULL, *defaultValue = NULL, *emptyStringValues = NULL, *_0 = NULL, **_9, *_1$$3, *_2$$3, *_3$$3, *_4$$6, *_5$$6, *_6$$6, *_10$$9 = NULL, *_11$$9 = NULL, *_12$$9 = NULL, *_13$$9 = NULL, *_14$$9 = NULL, *_15$$9 = NULL, *_17$$9 = NULL, *_18$$15 = NULL; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 2, 0, &model, &dependencyInjector); ZEPHIR_CALL_METHOD(&schema, model, "getschema", NULL, 0); zephir_check_call_status(); ZEPHIR_CALL_METHOD(&table, model, "getsource", NULL, 0); zephir_check_call_status(); ZEPHIR_CALL_METHOD(&readConnection, model, "getreadconnection", NULL, 0); zephir_check_call_status(); ZEPHIR_CALL_METHOD(&_0, readConnection, "tableexists", NULL, 0, table, schema); zephir_check_call_status(); if (!(zephir_is_true(_0))) { if (zephir_is_true(schema)) { ZEPHIR_INIT_VAR(completeTable); ZEPHIR_CONCAT_VSV(completeTable, schema, "'.'", table); } else { ZEPHIR_CPY_WRT(completeTable, table); } ZEPHIR_INIT_VAR(_1$$3); object_init_ex(_1$$3, phalcon_mvc_model_exception_ce); ZEPHIR_INIT_VAR(_2$$3); zephir_get_class(_2$$3, model, 0 TSRMLS_CC); ZEPHIR_INIT_VAR(_3$$3); ZEPHIR_CONCAT_SVSV(_3$$3, "Table '", completeTable, "' doesn't exist in database when dumping meta-data for ", _2$$3); ZEPHIR_CALL_METHOD(NULL, _1$$3, "__construct", NULL, 9, _3$$3); zephir_check_call_status(); zephir_throw_exception_debug(_1$$3, "phalcon/mvc/model/metadata/strategy/introspection.zep", 68 TSRMLS_CC); ZEPHIR_MM_RESTORE(); return; } ZEPHIR_CALL_METHOD(&columns, readConnection, "describecolumns", NULL, 0, table, schema); zephir_check_call_status(); if (!(zephir_fast_count_int(columns TSRMLS_CC))) { if (zephir_is_true(schema)) { ZEPHIR_INIT_NVAR(completeTable); ZEPHIR_CONCAT_VSV(completeTable, schema, "'.'", table); } else { ZEPHIR_CPY_WRT(completeTable, table); } ZEPHIR_INIT_VAR(_4$$6); object_init_ex(_4$$6, phalcon_mvc_model_exception_ce); ZEPHIR_INIT_VAR(_5$$6); zephir_get_class(_5$$6, model, 0 TSRMLS_CC); ZEPHIR_INIT_VAR(_6$$6); ZEPHIR_CONCAT_SVSV(_6$$6, "Cannot obtain table columns for the mapped source '", completeTable, "' used in model ", _5$$6); ZEPHIR_CALL_METHOD(NULL, _4$$6, "__construct", NULL, 9, _6$$6); zephir_check_call_status(); zephir_throw_exception_debug(_4$$6, "phalcon/mvc/model/metadata/strategy/introspection.zep", 88 TSRMLS_CC); ZEPHIR_MM_RESTORE(); return; } ZEPHIR_INIT_VAR(attributes); array_init(attributes); ZEPHIR_INIT_VAR(primaryKeys); array_init(primaryKeys); ZEPHIR_INIT_VAR(nonPrimaryKeys); array_init(nonPrimaryKeys); ZEPHIR_INIT_VAR(numericTyped); array_init(numericTyped); ZEPHIR_INIT_VAR(notNull); array_init(notNull); ZEPHIR_INIT_VAR(fieldTypes); array_init(fieldTypes); ZEPHIR_INIT_VAR(fieldBindTypes); array_init(fieldBindTypes); ZEPHIR_INIT_VAR(automaticDefault); array_init(automaticDefault); ZEPHIR_INIT_VAR(identityField); ZVAL_BOOL(identityField, 0); ZEPHIR_INIT_VAR(defaultValues); array_init(defaultValues); ZEPHIR_INIT_VAR(emptyStringValues); array_init(emptyStringValues); zephir_is_iterable(columns, &_8, &_7, 0, 0, "phalcon/mvc/model/metadata/strategy/introspection.zep", 165); for ( ; zend_hash_get_current_data_ex(_8, (void**) &_9, &_7) == SUCCESS ; zend_hash_move_forward_ex(_8, &_7) ) { ZEPHIR_GET_HVALUE(column, _9); ZEPHIR_CALL_METHOD(&fieldName, column, "getname", NULL, 0); zephir_check_call_status(); zephir_array_append(&attributes, fieldName, PH_SEPARATE, "phalcon/mvc/model/metadata/strategy/introspection.zep", 109); ZEPHIR_CALL_METHOD(&_10$$9, column, "isprimary", NULL, 0); zephir_check_call_status(); if (ZEPHIR_IS_TRUE_IDENTICAL(_10$$9)) { zephir_array_append(&primaryKeys, fieldName, PH_SEPARATE, "phalcon/mvc/model/metadata/strategy/introspection.zep", 115); } else { zephir_array_append(&nonPrimaryKeys, fieldName, PH_SEPARATE, "phalcon/mvc/model/metadata/strategy/introspection.zep", 117); } ZEPHIR_CALL_METHOD(&_11$$9, column, "isnumeric", NULL, 0); zephir_check_call_status(); if (ZEPHIR_IS_TRUE_IDENTICAL(_11$$9)) { zephir_array_update_zval(&numericTyped, fieldName, &ZEPHIR_GLOBAL(global_true), PH_COPY | PH_SEPARATE); } ZEPHIR_CALL_METHOD(&_12$$9, column, "isnotnull", NULL, 0); zephir_check_call_status(); if (ZEPHIR_IS_TRUE_IDENTICAL(_12$$9)) { zephir_array_append(¬Null, fieldName, PH_SEPARATE, "phalcon/mvc/model/metadata/strategy/introspection.zep", 131); } ZEPHIR_CALL_METHOD(&_13$$9, column, "isautoincrement", NULL, 0); zephir_check_call_status(); if (ZEPHIR_IS_TRUE_IDENTICAL(_13$$9)) { ZEPHIR_CPY_WRT(identityField, fieldName); } ZEPHIR_CALL_METHOD(&_14$$9, column, "gettype", NULL, 0); zephir_check_call_status(); zephir_array_update_zval(&fieldTypes, fieldName, &_14$$9, PH_COPY | PH_SEPARATE); ZEPHIR_CALL_METHOD(&_15$$9, column, "getbindtype", NULL, 0); zephir_check_call_status(); zephir_array_update_zval(&fieldBindTypes, fieldName, &_15$$9, PH_COPY | PH_SEPARATE); ZEPHIR_CALL_METHOD(&defaultValue, column, "getdefault", NULL, 0); zephir_check_call_status(); _16$$9 = Z_TYPE_P(defaultValue) != IS_NULL; if (!(_16$$9)) { ZEPHIR_CALL_METHOD(&_17$$9, column, "isnotnull", NULL, 0); zephir_check_call_status(); _16$$9 = ZEPHIR_IS_FALSE_IDENTICAL(_17$$9); } if (_16$$9) { ZEPHIR_CALL_METHOD(&_18$$15, column, "isautoincrement", NULL, 0); zephir_check_call_status(); if (!(zephir_is_true(_18$$15))) { zephir_array_update_zval(&defaultValues, fieldName, &defaultValue, PH_COPY | PH_SEPARATE); } } } zephir_create_array(return_value, 12, 0 TSRMLS_CC); zephir_array_update_long(&return_value, 0, &attributes, PH_COPY ZEPHIR_DEBUG_PARAMS_DUMMY); zephir_array_update_long(&return_value, 1, &primaryKeys, PH_COPY ZEPHIR_DEBUG_PARAMS_DUMMY); zephir_array_update_long(&return_value, 2, &nonPrimaryKeys, PH_COPY ZEPHIR_DEBUG_PARAMS_DUMMY); zephir_array_update_long(&return_value, 3, ¬Null, PH_COPY ZEPHIR_DEBUG_PARAMS_DUMMY); zephir_array_update_long(&return_value, 4, &fieldTypes, PH_COPY ZEPHIR_DEBUG_PARAMS_DUMMY); zephir_array_update_long(&return_value, 5, &numericTyped, PH_COPY ZEPHIR_DEBUG_PARAMS_DUMMY); zephir_array_update_long(&return_value, 8, &identityField, PH_COPY ZEPHIR_DEBUG_PARAMS_DUMMY); zephir_array_update_long(&return_value, 9, &fieldBindTypes, PH_COPY ZEPHIR_DEBUG_PARAMS_DUMMY); zephir_array_update_long(&return_value, 10, &automaticDefault, PH_COPY ZEPHIR_DEBUG_PARAMS_DUMMY); zephir_array_update_long(&return_value, 11, &automaticDefault, PH_COPY ZEPHIR_DEBUG_PARAMS_DUMMY); zephir_array_update_long(&return_value, 12, &defaultValues, PH_COPY ZEPHIR_DEBUG_PARAMS_DUMMY); zephir_array_update_long(&return_value, 13, &emptyStringValues, PH_COPY ZEPHIR_DEBUG_PARAMS_DUMMY); RETURN_MM(); }