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); }
/** * Returns a cached content * * @param int|string keyName * @param int lifetime * @return mixed */ PHP_METHOD(Phalcon_Cache_Backend_File, get) { zephir_nts_static zephir_fcall_cache_entry *_8 = NULL; int ttl, modifiedTime, ZEPHIR_LAST_CALL_STATUS; zval *keyName, *lifetime = NULL, *prefixedKey, *cacheDir, *cacheFile, *frontend, *lastLifetime, *cachedContent, *ret = NULL, *_0, *_1 = NULL, *_2, *_3 = NULL, *_4, *_5, *_6, *_7; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 1, 1, &keyName, &lifetime); if (!lifetime) { lifetime = ZEPHIR_GLOBAL(global_null); } _0 = zephir_fetch_nproperty_this(this_ptr, SL("_prefix"), PH_NOISY_CC); ZEPHIR_CALL_METHOD(&_1, this_ptr, "getkey", NULL, keyName); zephir_check_call_status(); ZEPHIR_INIT_VAR(prefixedKey); ZEPHIR_CONCAT_VV(prefixedKey, _0, _1); zephir_update_property_this(this_ptr, SL("_lastKey"), prefixedKey TSRMLS_CC); ZEPHIR_OBS_VAR(cacheDir); _2 = zephir_fetch_nproperty_this(this_ptr, SL("_options"), PH_NOISY_CC); if (!(zephir_array_isset_string_fetch(&cacheDir, _2, SS("cacheDir"), 0 TSRMLS_CC))) { ZEPHIR_THROW_EXCEPTION_DEBUG_STR(phalcon_cache_exception_ce, "Unexpected inconsistency in options", "phalcon/cache/backend/file.zep", 115); return; } ZEPHIR_INIT_VAR(cacheFile); ZEPHIR_CONCAT_VV(cacheFile, cacheDir, prefixedKey); if ((zephir_file_exists(cacheFile TSRMLS_CC) == SUCCESS) == 1) { ZEPHIR_OBS_VAR(frontend); zephir_read_property_this(&frontend, this_ptr, SL("_frontend"), PH_NOISY_CC); if (!(zephir_is_true(lifetime))) { ZEPHIR_OBS_VAR(lastLifetime); zephir_read_property_this(&lastLifetime, this_ptr, SL("_lastLifetime"), PH_NOISY_CC); if (!(zephir_is_true(lastLifetime))) { ZEPHIR_CALL_METHOD(&_3, frontend, "getlifetime", NULL); zephir_check_call_status(); ttl = zephir_get_intval(_3); } else { ttl = zephir_get_intval(lastLifetime); } } else { ttl = zephir_get_intval(lifetime); } ZEPHIR_INIT_VAR(_4); zephir_filemtime(_4, cacheFile TSRMLS_CC); modifiedTime = zephir_get_intval(_4); ZEPHIR_INIT_VAR(_5); zephir_time(_5); if (!((zephir_get_numberval(_5) - ttl) > modifiedTime)) { ZEPHIR_INIT_VAR(cachedContent); zephir_file_get_contents(cachedContent, cacheFile TSRMLS_CC); if (ZEPHIR_IS_FALSE_IDENTICAL(cachedContent)) { ZEPHIR_INIT_VAR(_6); object_init_ex(_6, phalcon_cache_exception_ce); ZEPHIR_INIT_VAR(_7); ZEPHIR_CONCAT_SVS(_7, "Cache file ", cacheFile, " could not be opened"); ZEPHIR_CALL_METHOD(NULL, _6, "__construct", &_8, _7); zephir_check_call_status(); zephir_throw_exception_debug(_6, "phalcon/cache/backend/file.zep", 151 TSRMLS_CC); ZEPHIR_MM_RESTORE(); return; } if (zephir_is_numeric(cachedContent)) { RETURN_CCTOR(cachedContent); } else { ZEPHIR_CALL_METHOD(&ret, frontend, "afterretrieve", NULL, cachedContent); zephir_check_call_status(); RETURN_CCTOR(ret); } } } ZEPHIR_MM_RESTORE(); }
/** * getOctet allow to gets the value of a configuration option in octet * * @return int the value of a configuration option in octet */ PHP_METHOD(Phady_Util_Tools, getOctets) { int size, ZEPHIR_LAST_CALL_STATUS; zval *option, *_0, *_1, _2, *_3, *_4, _5, *_6, *_7, _8, *_9 = NULL, *_10 = NULL, *_11 = NULL; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 1, 0, &option); ZEPHIR_INIT_VAR(_0); ZEPHIR_INIT_VAR(_1); ZEPHIR_SINIT_VAR(_2); ZVAL_STRING(&_2, "/[0-9]+k/i", 0); zephir_preg_match(_1, &_2, option, _0, 0, 0 , 0 TSRMLS_CC); ZEPHIR_INIT_VAR(_3); ZEPHIR_INIT_VAR(_4); ZEPHIR_SINIT_VAR(_5); ZVAL_STRING(&_5, "/[0-9]+m/i", 0); zephir_preg_match(_4, &_5, option, _3, 0, 0 , 0 TSRMLS_CC); ZEPHIR_INIT_VAR(_6); ZEPHIR_INIT_VAR(_7); ZEPHIR_SINIT_VAR(_8); ZVAL_STRING(&_8, "/[0-9]+g/i", 0); zephir_preg_match(_7, &_8, option, _6, 0, 0 , 0 TSRMLS_CC); if (zephir_is_true(_1)) { ZEPHIR_INIT_VAR(_9); ZVAL_STRING(_9, "/m/i", ZEPHIR_TEMP_PARAM_COPY); ZEPHIR_INIT_VAR(_10); ZVAL_STRING(_10, "", ZEPHIR_TEMP_PARAM_COPY); ZEPHIR_CALL_FUNCTION(&_11, "preg_replace", NULL, 142, _9, _10, option); zephir_check_temp_parameter(_9); zephir_check_temp_parameter(_10); zephir_check_call_status(); size = (zephir_get_intval(_11) * 1024); } else if (zephir_is_true(_4)) { ZEPHIR_INIT_NVAR(_9); ZVAL_STRING(_9, "/m/i", ZEPHIR_TEMP_PARAM_COPY); ZEPHIR_INIT_NVAR(_10); ZVAL_STRING(_10, "", ZEPHIR_TEMP_PARAM_COPY); ZEPHIR_CALL_FUNCTION(&_11, "preg_replace", NULL, 142, _9, _10, option); zephir_check_temp_parameter(_9); zephir_check_temp_parameter(_10); zephir_check_call_status(); size = (1048576 * zephir_get_intval(_11)); } else if (zephir_is_true(_7)) { ZEPHIR_INIT_NVAR(_9); ZVAL_STRING(_9, "/g/i", ZEPHIR_TEMP_PARAM_COPY); ZEPHIR_INIT_NVAR(_10); ZVAL_STRING(_10, "", ZEPHIR_TEMP_PARAM_COPY); ZEPHIR_CALL_FUNCTION(&_11, "preg_replace", NULL, 142, _9, _10, option); zephir_check_temp_parameter(_9); zephir_check_temp_parameter(_10); zephir_check_call_status(); size = ((1048576 * 1024) * zephir_get_intval(_11)); } else { size = zephir_get_numberval(option); } RETURN_MM_LONG(size); }
PHP_METHOD(Xs_FieldMeta, toConfig) { zend_bool _6, _9, _10, _13, _14, _16; zval *s; zval index, *_0, *_1, *_2, *_3, *_4, *_5, *_7, *_8 = NULL, *_11, *_12, *_15; ZEPHIR_MM_GROW(); ZEPHIR_INIT_VAR(s); ZVAL_STRING(s, "", 1); _0 = zephir_fetch_nproperty_this(this_ptr, SL("name"), PH_NOISY_CC); ZEPHIR_INIT_VAR(_1); ZEPHIR_CONCAT_SVS(_1, "[", _0, "]\n"); zephir_concat_self(&s, _1 TSRMLS_CC); _2 = zephir_fetch_nproperty_this(this_ptr, SL("type"), PH_NOISY_CC); do { if (ZEPHIR_IS_LONG(_2, 1)) { zephir_concat_self_str(&s, "type = numeric\n", sizeof("type = numeric\n")-1 TSRMLS_CC); break; } if (ZEPHIR_IS_LONG(_2, 10)) { zephir_concat_self_str(&s, "type = id\n", sizeof("type = id\n")-1 TSRMLS_CC); break; } if (ZEPHIR_IS_LONG(_2, 11)) { zephir_concat_self_str(&s, "type = title\n", sizeof("type = title\n")-1 TSRMLS_CC); break; } if (ZEPHIR_IS_LONG(_2, 12)) { zephir_concat_self_str(&s, "type = body\n", sizeof("type = body\n")-1 TSRMLS_CC); break; } } while(0); _3 = zephir_fetch_nproperty_this(this_ptr, SL("type"), PH_NOISY_CC); if (!ZEPHIR_IS_LONG_IDENTICAL(_3, 12)) { _4 = zephir_fetch_nproperty_this(this_ptr, SL("flag"), PH_NOISY_CC); ZEPHIR_SINIT_VAR(index); ZVAL_LONG(&index, ((int) (zephir_get_numberval(_4)) & 0x03)); if (zephir_is_true(&index)) { do { if (ZEPHIR_IS_LONG(&index, 0x03)) { _5 = zephir_fetch_nproperty_this(this_ptr, SL("type"), PH_NOISY_CC); if (!ZEPHIR_IS_LONG_IDENTICAL(_5, 11)) { zephir_concat_self_str(&s, "index = both\n", sizeof("index = both\n")-1 TSRMLS_CC); } break; } if (ZEPHIR_IS_LONG(&index, 0x02)) { zephir_concat_self_str(&s, "index = mixed\n", sizeof("index = mixed\n")-1 TSRMLS_CC); break; } _5 = zephir_fetch_nproperty_this(this_ptr, SL("type"), PH_NOISY_CC); if (!ZEPHIR_IS_LONG_IDENTICAL(_5, 10)) { zephir_concat_self_str(&s, "index = self\n", sizeof("index = self\n")-1 TSRMLS_CC); } break; } while(0); } } _4 = zephir_fetch_nproperty_this(this_ptr, SL("type"), PH_NOISY_CC); _6 = !ZEPHIR_IS_LONG_IDENTICAL(_4, 10); if (_6) { _5 = zephir_fetch_nproperty_this(this_ptr, SL("tokenizer"), PH_NOISY_CC); _6 = !ZEPHIR_IS_LONG_IDENTICAL(_5, 0); } if (_6) { _7 = zephir_fetch_nproperty_this(this_ptr, SL("tokenizer"), PH_NOISY_CC); ZEPHIR_INIT_VAR(_8); ZEPHIR_CONCAT_SVS(_8, "tokenizer = ", _7, "\n"); zephir_concat_self(&s, _8 TSRMLS_CC); } _4 = zephir_fetch_nproperty_this(this_ptr, SL("cutlen"), PH_NOISY_CC); _9 = ZEPHIR_GT_LONG(_4, 0); if (_9) { _7 = zephir_fetch_nproperty_this(this_ptr, SL("cutlen"), PH_NOISY_CC); _10 = ZEPHIR_IS_LONG_IDENTICAL(_7, 300); if (_10) { _11 = zephir_fetch_nproperty_this(this_ptr, SL("type"), PH_NOISY_CC); _10 = ZEPHIR_IS_LONG_IDENTICAL(_11, 12); } _9 = !(_10); } if (_9) { _12 = zephir_fetch_nproperty_this(this_ptr, SL("cutlen"), PH_NOISY_CC); ZEPHIR_INIT_LNVAR(_8); ZEPHIR_CONCAT_SVS(_8, "cutlen = ", _12, "\n"); zephir_concat_self(&s, _8 TSRMLS_CC); } _4 = zephir_fetch_nproperty_this(this_ptr, SL("weight"), PH_NOISY_CC); _13 = !ZEPHIR_IS_LONG_IDENTICAL(_4, 1); if (_13) { _7 = zephir_fetch_nproperty_this(this_ptr, SL("weight"), PH_NOISY_CC); _14 = ZEPHIR_IS_LONG_IDENTICAL(_7, 5); if (_14) { _12 = zephir_fetch_nproperty_this(this_ptr, SL("type"), PH_NOISY_CC); _14 = ZEPHIR_IS_LONG_IDENTICAL(_12, 11); } _13 = !(_14); } if (_13) { _15 = zephir_fetch_nproperty_this(this_ptr, SL("weight"), PH_NOISY_CC); ZEPHIR_INIT_LNVAR(_8); ZEPHIR_CONCAT_SVS(_8, "weight = ", _15, "\n"); zephir_concat_self(&s, _8 TSRMLS_CC); } _4 = zephir_fetch_nproperty_this(this_ptr, SL("flag"), PH_NOISY_CC); if (((int) (zephir_get_numberval(_4)) & 0x10)) { _7 = zephir_fetch_nproperty_this(this_ptr, SL("type"), PH_NOISY_CC); _16 = !ZEPHIR_IS_LONG_IDENTICAL(_7, 12); if (_16) { _12 = zephir_fetch_nproperty_this(this_ptr, SL("type"), PH_NOISY_CC); _16 = !ZEPHIR_IS_LONG_IDENTICAL(_12, 11); } if (_16) { zephir_concat_self_str(&s, "phrase = yes\n", sizeof("phrase = yes\n")-1 TSRMLS_CC); } } else { _4 = zephir_fetch_nproperty_this(this_ptr, SL("type"), PH_NOISY_CC); _16 = ZEPHIR_IS_LONG_IDENTICAL(_4, 12); if (!(_16)) { _7 = zephir_fetch_nproperty_this(this_ptr, SL("type"), PH_NOISY_CC); _16 = ZEPHIR_IS_LONG_IDENTICAL(_7, 11); } if (_16) { zephir_concat_self_str(&s, "phrase = no\n", sizeof("phrase = no\n")-1 TSRMLS_CC); } } _4 = zephir_fetch_nproperty_this(this_ptr, SL("flag"), PH_NOISY_CC); if (((int) (zephir_get_numberval(_4)) & 0x80)) { zephir_concat_self_str(&s, "non_bool = yes\n", sizeof("non_bool = yes\n")-1 TSRMLS_CC); } RETURN_CTOR(s); }
/** * Set an specific argument */ PHP_METHOD(Phalcon_Cli_Console, setArgument) { HashTable *_3; HashPosition _2; int ZEPHIR_LAST_CALL_STATUS; zephir_fcall_cache_entry *_1 = NULL, *_8 = NULL, *_27 = NULL; zend_bool str, shift, _0; zval *arguments_param = NULL, *str_param = NULL, *shift_param = NULL, *arg = NULL, *pos = NULL, *args = NULL, *opts = NULL, *handleArgs = NULL, **_4, _5$$5 = zval_used_for_init, _6$$5 = zval_used_for_init, *_7$$5 = NULL, _9$$6 = zval_used_for_init, *_10$$7 = NULL, _11$$7 = zval_used_for_init, *_12$$7 = NULL, *_13$$7 = NULL, _14$$7 = zval_used_for_init, _15$$7 = zval_used_for_init, *_16$$7 = NULL, *_17$$8 = NULL, _18$$8 = zval_used_for_init, *_19$$8 = NULL, _20$$9 = zval_used_for_init, _21$$9 = zval_used_for_init, *_22$$9 = NULL, _23$$10 = zval_used_for_init, *_24$$10 = NULL, *_25$$13, *_26$$13 = NULL, *_28$$15 = NULL, *_29$$16 = NULL, *_30$$17; zval *arguments = NULL; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 0, 3, &arguments_param, &str_param, &shift_param); if (!arguments_param) { ZEPHIR_INIT_VAR(arguments); array_init(arguments); } else { arguments = arguments_param; } if (!str_param) { str = 1; } else { if (unlikely(Z_TYPE_P(str_param) != IS_BOOL)) { zephir_throw_exception_string(spl_ce_InvalidArgumentException, SL("Parameter 'str' must be a bool") TSRMLS_CC); RETURN_MM_NULL(); } str = Z_BVAL_P(str_param); } if (!shift_param) { shift = 1; } else { if (unlikely(Z_TYPE_P(shift_param) != IS_BOOL)) { zephir_throw_exception_string(spl_ce_InvalidArgumentException, SL("Parameter 'shift' must be a bool") TSRMLS_CC); RETURN_MM_NULL(); } shift = Z_BVAL_P(shift_param); } ZEPHIR_INIT_VAR(args); array_init(args); ZEPHIR_INIT_VAR(opts); array_init(opts); ZEPHIR_INIT_VAR(handleArgs); array_init(handleArgs); _0 = shift; if (_0) { _0 = ((zephir_fast_count_int(arguments TSRMLS_CC)) ? 1 : 0); } if (_0) { ZEPHIR_MAKE_REF(arguments); ZEPHIR_CALL_FUNCTION(NULL, "array_shift", &_1, 132, arguments); ZEPHIR_UNREF(arguments); zephir_check_call_status(); } zephir_is_iterable(arguments, &_3, &_2, 0, 0, "phalcon/cli/console.zep", 199); for ( ; zephir_hash_get_current_data_ex(_3, (void**) &_4, &_2) == SUCCESS ; zephir_hash_move_forward_ex(_3, &_2) ) { ZEPHIR_GET_HVALUE(arg, _4); if (Z_TYPE_P(arg) == IS_STRING) { ZEPHIR_SINIT_NVAR(_5$$5); ZVAL_STRING(&_5$$5, "--", 0); ZEPHIR_SINIT_NVAR(_6$$5); ZVAL_LONG(&_6$$5, 2); ZEPHIR_CALL_FUNCTION(&_7$$5, "strncmp", &_8, 133, arg, &_5$$5, &_6$$5); zephir_check_call_status(); if (ZEPHIR_IS_LONG(_7$$5, 0)) { ZEPHIR_SINIT_NVAR(_9$$6); ZVAL_STRING(&_9$$6, "=", 0); ZEPHIR_INIT_NVAR(pos); zephir_fast_strpos(pos, arg, &_9$$6, 0 ); if (zephir_is_true(pos)) { ZEPHIR_INIT_NVAR(_10$$7); ZEPHIR_SINIT_NVAR(_11$$7); ZVAL_LONG(&_11$$7, (zephir_get_numberval(pos) + 1)); ZEPHIR_INIT_NVAR(_12$$7); zephir_substr(_12$$7, arg, zephir_get_intval(&_11$$7), 0, ZEPHIR_SUBSTR_NO_LENGTH); zephir_fast_trim(_10$$7, _12$$7, NULL , ZEPHIR_TRIM_BOTH TSRMLS_CC); ZEPHIR_INIT_NVAR(_13$$7); ZEPHIR_SINIT_NVAR(_14$$7); ZVAL_LONG(&_14$$7, 2); ZEPHIR_SINIT_NVAR(_15$$7); ZVAL_LONG(&_15$$7, (zephir_get_numberval(pos) - 2)); ZEPHIR_INIT_NVAR(_16$$7); zephir_substr(_16$$7, arg, 2 , zephir_get_intval(&_15$$7), 0); zephir_fast_trim(_13$$7, _16$$7, NULL , ZEPHIR_TRIM_BOTH TSRMLS_CC); zephir_array_update_zval(&opts, _13$$7, &_10$$7, PH_COPY | PH_SEPARATE); } else { ZEPHIR_INIT_NVAR(_17$$8); ZEPHIR_SINIT_NVAR(_18$$8); ZVAL_LONG(&_18$$8, 2); ZEPHIR_INIT_NVAR(_19$$8); zephir_substr(_19$$8, arg, 2 , 0, ZEPHIR_SUBSTR_NO_LENGTH); zephir_fast_trim(_17$$8, _19$$8, NULL , ZEPHIR_TRIM_BOTH TSRMLS_CC); zephir_array_update_zval(&opts, _17$$8, &ZEPHIR_GLOBAL(global_true), PH_COPY | PH_SEPARATE); } } else { ZEPHIR_SINIT_NVAR(_20$$9); ZVAL_STRING(&_20$$9, "-", 0); ZEPHIR_SINIT_NVAR(_21$$9); ZVAL_LONG(&_21$$9, 1); ZEPHIR_CALL_FUNCTION(&_22$$9, "strncmp", &_8, 133, arg, &_20$$9, &_21$$9); zephir_check_call_status(); if (ZEPHIR_IS_LONG(_22$$9, 0)) { ZEPHIR_SINIT_NVAR(_23$$10); ZVAL_LONG(&_23$$10, 1); ZEPHIR_INIT_NVAR(_24$$10); zephir_substr(_24$$10, arg, 1 , 0, ZEPHIR_SUBSTR_NO_LENGTH); zephir_array_update_zval(&opts, _24$$10, &ZEPHIR_GLOBAL(global_true), PH_COPY | PH_SEPARATE); } else { zephir_array_append(&args, arg, PH_SEPARATE, "phalcon/cli/console.zep", 191); } } } else { zephir_array_append(&args, arg, PH_SEPARATE, "phalcon/cli/console.zep", 195); } } if (str) { ZEPHIR_INIT_VAR(_25$$13); ZEPHIR_CALL_CE_STATIC(&_26$$13, phalcon_cli_router_route_ce, "getdelimiter", &_27, 134); zephir_check_call_status(); zephir_fast_join(_25$$13, _26$$13, args TSRMLS_CC); zephir_update_property_this(this_ptr, SL("_arguments"), _25$$13 TSRMLS_CC); } else { if (zephir_fast_count_int(args TSRMLS_CC)) { ZEPHIR_MAKE_REF(args); ZEPHIR_CALL_FUNCTION(&_28$$15, "array_shift", &_1, 132, args); ZEPHIR_UNREF(args); zephir_check_call_status(); zephir_array_update_string(&handleArgs, SL("task"), &_28$$15, PH_COPY | PH_SEPARATE); } if (zephir_fast_count_int(args TSRMLS_CC)) { ZEPHIR_MAKE_REF(args); ZEPHIR_CALL_FUNCTION(&_29$$16, "array_shift", &_1, 132, args); ZEPHIR_UNREF(args); zephir_check_call_status(); zephir_array_update_string(&handleArgs, SL("action"), &_29$$16, PH_COPY | PH_SEPARATE); } if (zephir_fast_count_int(args TSRMLS_CC)) { ZEPHIR_INIT_VAR(_30$$17); zephir_fast_array_merge(_30$$17, &(handleArgs), &(args) TSRMLS_CC); ZEPHIR_CPY_WRT(handleArgs, _30$$17); } zephir_update_property_this(this_ptr, SL("_arguments"), handleArgs TSRMLS_CC); } zephir_update_property_this(this_ptr, SL("_options"), opts TSRMLS_CC); RETURN_THIS(); }
PHP_METHOD(Test_SpectralNorm, process) { zend_function *_8 = NULL, *_9 = NULL, *_10 = NULL, *_14 = NULL, *_15 = NULL, *_19 = NULL, *_21 = NULL, *_23 = NULL, *_24 = NULL; zend_bool _4, _11, _16; zend_class_entry *_0, *_2, *_3; zval *n_param = NULL, *u, *v, *w, *_1 = NULL, *_7 = NULL, *_20 = NULL, *_22 = NULL, *_25 = NULL, _26; int n, i, vv = 0, vBv = 0, _5, _6, _12, _13, _17, _18; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 1, 0, &n_param); n = zephir_get_intval(n_param); ZEPHIR_INIT_VAR(u); _0 = zend_fetch_class(SL("SplFixedArray"), ZEND_FETCH_CLASS_AUTO TSRMLS_CC); object_init_ex(u, _0); ZEPHIR_INIT_VAR(_1); ZVAL_LONG(_1, n); zephir_call_method_p1_noret(u, "__construct", _1); ZEPHIR_INIT_VAR(v); _2 = zend_fetch_class(SL("SplFixedArray"), ZEND_FETCH_CLASS_AUTO TSRMLS_CC); object_init_ex(v, _2); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, n); zephir_call_method_p1_noret(v, "__construct", _1); ZEPHIR_INIT_VAR(w); _3 = zend_fetch_class(SL("SplFixedArray"), ZEND_FETCH_CLASS_AUTO TSRMLS_CC); object_init_ex(w, _3); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, n); zephir_call_method_p1_noret(w, "__construct", _1); _6 = (n - 1); _5 = 0; _4 = 0; if ((_5 <= _6)) { while (1) { if (_4) { _5++; if (!((_5 <= _6))) { break; } } else { _4 = 1; } i = _5; ZEPHIR_INIT_NVAR(_1); ZVAL_LONG(_1, i); ZEPHIR_INIT_NVAR(_7); ZVAL_LONG(_7, 1); zephir_call_method_p2_cache_noret(u, "offsetset", &_8, _1, _7); ZEPHIR_INIT_NVAR(_1); ZVAL_LONG(_1, i); ZEPHIR_INIT_NVAR(_7); ZVAL_LONG(_7, 1); zephir_call_method_p2_cache_noret(v, "offsetset", &_9, _1, _7); ZEPHIR_INIT_NVAR(_1); ZVAL_LONG(_1, i); ZEPHIR_INIT_NVAR(_7); ZVAL_LONG(_7, 1); zephir_call_method_p2_cache_noret(w, "offsetset", &_10, _1, _7); } } _13 = 9; _12 = 0; _11 = 0; if ((_12 <= _13)) { while (1) { if (_11) { _12++; if (!((_12 <= _13))) { break; } } else { _11 = 1; } i = _12; ZEPHIR_INIT_NVAR(_1); ZVAL_LONG(_1, n); zephir_call_method_p4_cache_noret(this_ptr, "atau", &_14, _1, u, v, w); ZEPHIR_INIT_NVAR(_1); ZVAL_LONG(_1, n); zephir_call_method_p4_cache_noret(this_ptr, "atau", &_15, _1, v, u, w); } } _18 = (n - 1); _17 = 0; _16 = 0; if ((_17 <= _18)) { while (1) { if (_16) { _17++; if (!((_17 <= _18))) { break; } } else { _16 = 1; } i = _17; ZEPHIR_INIT_NVAR(_1); ZEPHIR_INIT_NVAR(_7); ZVAL_LONG(_7, i); zephir_call_method_p1_cache(_1, u, "offsetget", &_19, _7); ZEPHIR_INIT_NVAR(_7); ZEPHIR_INIT_NVAR(_20); ZVAL_LONG(_20, i); zephir_call_method_p1_cache(_7, v, "offsetget", &_21, _20); ZEPHIR_INIT_LNVAR(_22); mul_function(_22, _1, _7 TSRMLS_CC); vBv += zephir_get_numberval(_22); ZEPHIR_INIT_NVAR(_1); ZEPHIR_INIT_NVAR(_7); ZVAL_LONG(_7, i); zephir_call_method_p1_cache(_1, v, "offsetget", &_23, _7); ZEPHIR_INIT_NVAR(_7); ZEPHIR_INIT_NVAR(_20); ZVAL_LONG(_20, i); zephir_call_method_p1_cache(_7, v, "offsetget", &_24, _20); ZEPHIR_INIT_LNVAR(_25); mul_function(_25, _1, _7 TSRMLS_CC); vv += zephir_get_numberval(_25); } } ZEPHIR_SINIT_VAR(_26); ZVAL_LONG(&_26, (vBv / vv)); zephir_call_func_p1(return_value, "sqrt", &_26); RETURN_MM(); }
/** * Extracts a slice from a string/array/traversable object value */ PHP_METHOD(Phalcon_Mvc_View_Engine_Volt, slice) { zend_bool _1$$5; zephir_fcall_cache_entry *_3 = NULL, *_4 = NULL, *_7 = NULL; int start, ZEPHIR_LAST_CALL_STATUS, position = 0; zval *value, *start_param = NULL, *end = NULL, *length = NULL, *slice = NULL, _10, *_0$$3 = NULL, *_2$$6 = NULL, _5$$9, _6$$11, _8$$10, _9$$12; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 1, 2, &value, &start_param, &end); if (!start_param) { start = 0; } else { start = zephir_get_intval(start_param); } if (!end) { ZEPHIR_CPY_WRT(end, ZEPHIR_GLOBAL(global_null)); } else { ZEPHIR_SEPARATE_PARAM(end); } if (Z_TYPE_P(value) == IS_OBJECT) { if (Z_TYPE_P(end) == IS_NULL) { ZEPHIR_INIT_NVAR(end); ZVAL_LONG(end, (zephir_fast_count_int(value TSRMLS_CC) - 1)); } position = 0; ZEPHIR_INIT_VAR(slice); array_init(slice); ZEPHIR_CALL_METHOD(NULL, value, "rewind", NULL, 0); zephir_check_call_status(); while (1) { ZEPHIR_CALL_METHOD(&_0$$3, value, "valid", NULL, 0); zephir_check_call_status(); if (!(zephir_is_true(_0$$3))) { break; } _1$$5 = position >= start; if (_1$$5) { _1$$5 = ZEPHIR_GE_LONG(end, position); } if (_1$$5) { ZEPHIR_CALL_METHOD(&_2$$6, value, "current", &_3, 0); zephir_check_call_status(); zephir_array_append(&slice, _2$$6, PH_SEPARATE, "phalcon/mvc/view/engine/volt.zep", 223); } ZEPHIR_CALL_METHOD(NULL, value, "next", &_4, 0); zephir_check_call_status(); position++; } RETURN_CCTOR(slice); } ZEPHIR_INIT_VAR(length); if (Z_TYPE_P(end) != IS_NULL) { ZVAL_LONG(length, (((zephir_get_numberval(end) - start)) + 1)); } else { ZVAL_NULL(length); } if (Z_TYPE_P(value) == IS_ARRAY) { ZEPHIR_SINIT_VAR(_5$$9); ZVAL_LONG(&_5$$9, start); ZEPHIR_RETURN_CALL_FUNCTION("array_slice", NULL, 394, value, &_5$$9, length); zephir_check_call_status(); RETURN_MM(); } if ((zephir_function_exists_ex(SS("mb_substr") TSRMLS_CC) == SUCCESS)) { if (Z_TYPE_P(length) != IS_NULL) { ZEPHIR_SINIT_VAR(_6$$11); ZVAL_LONG(&_6$$11, start); ZEPHIR_RETURN_CALL_FUNCTION("mb_substr", &_7, 395, value, &_6$$11, length); zephir_check_call_status(); RETURN_MM(); } ZEPHIR_SINIT_VAR(_8$$10); ZVAL_LONG(&_8$$10, start); ZEPHIR_RETURN_CALL_FUNCTION("mb_substr", &_7, 395, value, &_8$$10); zephir_check_call_status(); RETURN_MM(); } if (Z_TYPE_P(length) != IS_NULL) { ZEPHIR_SINIT_VAR(_9$$12); ZVAL_LONG(&_9$$12, start); zephir_substr(return_value, value, zephir_get_intval(&_9$$12), zephir_get_intval(length), 0); RETURN_MM(); } ZEPHIR_SINIT_VAR(_10); ZVAL_LONG(&_10, start); zephir_substr(return_value, value, zephir_get_intval(&_10), 0, ZEPHIR_SUBSTR_NO_LENGTH); RETURN_MM(); }
/** * Returns a slice of the resultset to show in the pagination */ PHP_METHOD(Phalcon_Paginator_Adapter_QueryBuilder, getPaginate) { int numberPage, before, ZEPHIR_LAST_CALL_STATUS; zval *originalBuilder, *builder, *totalBuilder, *totalPages, *limit, *number, *query = NULL, *page, *items = NULL, *totalQuery = NULL, *result = NULL, *row = NULL, *rowcount, *next = NULL, *_0, *_1 = NULL, *_2, _3, _4, *_5; ZEPHIR_MM_GROW(); ZEPHIR_OBS_VAR(originalBuilder); zephir_read_property_this(&originalBuilder, this_ptr, SL("_builder"), PH_NOISY_CC); ZEPHIR_INIT_VAR(builder); if (zephir_clone(builder, originalBuilder TSRMLS_CC) == FAILURE) { RETURN_MM(); } ZEPHIR_INIT_VAR(totalBuilder); if (zephir_clone(totalBuilder, builder TSRMLS_CC) == FAILURE) { RETURN_MM(); } ZEPHIR_OBS_VAR(limit); zephir_read_property_this(&limit, this_ptr, SL("_limitRows"), PH_NOISY_CC); ZEPHIR_OBS_VAR(_0); zephir_read_property_this(&_0, this_ptr, SL("_page"), PH_NOISY_CC); numberPage = zephir_get_intval(_0); if (!(numberPage)) { numberPage = 1; } ZEPHIR_INIT_VAR(number); ZVAL_LONG(number, (zephir_get_numberval(limit) * ((numberPage - 1)))); if (ZEPHIR_LT(number, limit)) { ZEPHIR_CALL_METHOD(NULL, builder, "limit", NULL, 0, limit); zephir_check_call_status(); } else { ZEPHIR_CALL_METHOD(NULL, builder, "limit", NULL, 0, limit, number); zephir_check_call_status(); } ZEPHIR_CALL_METHOD(&query, builder, "getquery", NULL, 0); zephir_check_call_status(); if (numberPage == 1) { before = 1; } else { before = (numberPage - 1); } ZEPHIR_CALL_METHOD(&items, query, "execute", NULL, 0); zephir_check_call_status(); ZEPHIR_INIT_VAR(_1); ZVAL_STRING(_1, "COUNT(*) [rowcount]", ZEPHIR_TEMP_PARAM_COPY); ZEPHIR_CALL_METHOD(NULL, totalBuilder, "columns", NULL, 0, _1); zephir_check_temp_parameter(_1); zephir_check_call_status(); ZEPHIR_INIT_NVAR(_1); ZVAL_NULL(_1); ZEPHIR_CALL_METHOD(NULL, totalBuilder, "orderby", NULL, 0, _1); zephir_check_call_status(); ZEPHIR_CALL_METHOD(&totalQuery, totalBuilder, "getquery", NULL, 0); zephir_check_call_status(); ZEPHIR_CALL_METHOD(&result, totalQuery, "execute", NULL, 0); zephir_check_call_status(); ZEPHIR_CALL_METHOD(&row, result, "getfirst", NULL, 0); zephir_check_call_status(); ZEPHIR_OBS_VAR(_2); zephir_read_property(&_2, row, SL("rowcount"), PH_NOISY_CC); ZEPHIR_INIT_VAR(rowcount); ZVAL_LONG(rowcount, zephir_get_intval(_2)); ZEPHIR_SINIT_VAR(_3); div_function(&_3, rowcount, limit TSRMLS_CC); ZEPHIR_SINIT_VAR(_4); ZVAL_DOUBLE(&_4, zephir_ceil(&_3 TSRMLS_CC)); ZEPHIR_INIT_VAR(totalPages); ZVAL_LONG(totalPages, zephir_get_intval(&_4)); if (ZEPHIR_GT_LONG(totalPages, numberPage)) { ZEPHIR_INIT_VAR(next); ZVAL_LONG(next, (numberPage + 1)); } else { ZEPHIR_CPY_WRT(next, totalPages); } ZEPHIR_INIT_VAR(page); object_init(page); zephir_update_property_zval(page, SL("items"), items TSRMLS_CC); ZEPHIR_INIT_ZVAL_NREF(_5); ZVAL_LONG(_5, 1); zephir_update_property_zval(page, SL("first"), _5 TSRMLS_CC); ZEPHIR_INIT_ZVAL_NREF(_5); ZVAL_LONG(_5, before); zephir_update_property_zval(page, SL("before"), _5 TSRMLS_CC); ZEPHIR_INIT_ZVAL_NREF(_5); ZVAL_LONG(_5, numberPage); zephir_update_property_zval(page, SL("current"), _5 TSRMLS_CC); zephir_update_property_zval(page, SL("last"), totalPages TSRMLS_CC); zephir_update_property_zval(page, SL("next"), next TSRMLS_CC); zephir_update_property_zval(page, SL("total_pages"), totalPages TSRMLS_CC); zephir_update_property_zval(page, SL("total_items"), rowcount TSRMLS_CC); _5 = zephir_fetch_nproperty_this(this_ptr, SL("_limitRows"), PH_NOISY_CC); zephir_update_property_zval(page, SL("limit"), _5 TSRMLS_CC); RETURN_CCTOR(page); }
/** * Returns a slice of the resultset to show in the pagination */ PHP_METHOD(Phalcon_Paginator_Adapter_QueryBuilder, getPaginate) { zval *_4$$8; zval *originalBuilder = NULL, *builder = NULL, *totalBuilder = NULL, *totalPages = NULL, *limit = NULL, *number = NULL, *query = NULL, *page = NULL, *items = NULL, *totalQuery = NULL, *result = NULL, *row = NULL, *rowcount = NULL, *next = NULL, *_0, *_1 = NULL, *groups = NULL, *_6, _7, _8, *_9, *groupColumn$$8 = NULL, *_2$$8 = NULL, *_3$$8, *_5$$8; int ZEPHIR_LAST_CALL_STATUS, numberPage = 0, before = 0; ZEPHIR_MM_GROW(); ZEPHIR_OBS_VAR(originalBuilder); zephir_read_property_this(&originalBuilder, this_ptr, SL("_builder"), PH_NOISY_CC); ZEPHIR_INIT_VAR(builder); if (zephir_clone(builder, originalBuilder TSRMLS_CC) == FAILURE) { RETURN_MM(); } ZEPHIR_INIT_VAR(totalBuilder); if (zephir_clone(totalBuilder, builder TSRMLS_CC) == FAILURE) { RETURN_MM(); } ZEPHIR_OBS_VAR(limit); zephir_read_property_this(&limit, this_ptr, SL("_limitRows"), PH_NOISY_CC); ZEPHIR_OBS_VAR(_0); zephir_read_property_this(&_0, this_ptr, SL("_page"), PH_NOISY_CC); numberPage = zephir_get_intval(_0); if (!(numberPage)) { numberPage = 1; } ZEPHIR_INIT_VAR(number); ZVAL_LONG(number, (zephir_get_numberval(limit) * ((numberPage - 1)))); if (ZEPHIR_LT(number, limit)) { ZEPHIR_CALL_METHOD(NULL, builder, "limit", NULL, 0, limit); zephir_check_call_status(); } else { ZEPHIR_CALL_METHOD(NULL, builder, "limit", NULL, 0, limit, number); zephir_check_call_status(); } ZEPHIR_CALL_METHOD(&query, builder, "getquery", NULL, 0); zephir_check_call_status(); if (numberPage == 1) { before = 1; } else { before = (numberPage - 1); } ZEPHIR_CALL_METHOD(&items, query, "execute", NULL, 0); zephir_check_call_status(); ZEPHIR_INIT_VAR(_1); ZVAL_STRING(_1, "COUNT(*) [rowcount]", ZEPHIR_TEMP_PARAM_COPY); ZEPHIR_CALL_METHOD(NULL, totalBuilder, "columns", NULL, 0, _1); zephir_check_temp_parameter(_1); zephir_check_call_status(); ZEPHIR_CALL_METHOD(&groups, totalBuilder, "getgroupby", NULL, 0); zephir_check_call_status(); if (!(ZEPHIR_IS_EMPTY(groups))) { if (Z_TYPE_P(groups) == IS_ARRAY) { ZEPHIR_INIT_VAR(groupColumn$$8); zephir_fast_join_str(groupColumn$$8, SL(", "), groups TSRMLS_CC); } else { ZEPHIR_CPY_WRT(groupColumn$$8, groups); } ZEPHIR_INIT_VAR(_3$$8); ZVAL_NULL(_3$$8); ZEPHIR_CALL_METHOD(&_2$$8, totalBuilder, "groupby", NULL, 0, _3$$8); zephir_check_call_status(); ZEPHIR_INIT_VAR(_4$$8); zephir_create_array(_4$$8, 1, 0 TSRMLS_CC); ZEPHIR_INIT_VAR(_5$$8); ZEPHIR_CONCAT_SVS(_5$$8, "COUNT(DISTINCT ", groupColumn$$8, ") AS rowcount"); zephir_array_fast_append(_4$$8, _5$$8); ZEPHIR_CALL_METHOD(NULL, _2$$8, "columns", NULL, 0, _4$$8); zephir_check_call_status(); } ZEPHIR_INIT_NVAR(_1); ZVAL_NULL(_1); ZEPHIR_CALL_METHOD(NULL, totalBuilder, "orderby", NULL, 0, _1); zephir_check_call_status(); ZEPHIR_CALL_METHOD(&totalQuery, totalBuilder, "getquery", NULL, 0); zephir_check_call_status(); ZEPHIR_CALL_METHOD(&result, totalQuery, "execute", NULL, 0); zephir_check_call_status(); ZEPHIR_CALL_METHOD(&row, result, "getfirst", NULL, 0); zephir_check_call_status(); if (zephir_is_true(row)) { ZEPHIR_OBS_VAR(_6); zephir_read_property(&_6, row, SL("rowcount"), PH_NOISY_CC); ZEPHIR_INIT_VAR(rowcount); ZVAL_LONG(rowcount, zephir_get_intval(_6)); } else { ZEPHIR_INIT_NVAR(rowcount); ZVAL_LONG(rowcount, 0); } ZEPHIR_SINIT_VAR(_7); div_function(&_7, rowcount, limit TSRMLS_CC); ZEPHIR_SINIT_VAR(_8); ZVAL_DOUBLE(&_8, zephir_ceil(&_7 TSRMLS_CC)); ZEPHIR_INIT_VAR(totalPages); ZVAL_LONG(totalPages, zephir_get_intval(&_8)); if (ZEPHIR_GT_LONG(totalPages, numberPage)) { ZEPHIR_INIT_VAR(next); ZVAL_LONG(next, (numberPage + 1)); } else { ZEPHIR_CPY_WRT(next, totalPages); } ZEPHIR_INIT_VAR(page); object_init(page); zephir_update_property_zval(page, SL("items"), items TSRMLS_CC); ZEPHIR_INIT_ZVAL_NREF(_9); ZVAL_LONG(_9, 1); zephir_update_property_zval(page, SL("first"), _9 TSRMLS_CC); ZEPHIR_INIT_ZVAL_NREF(_9); ZVAL_LONG(_9, before); zephir_update_property_zval(page, SL("before"), _9 TSRMLS_CC); ZEPHIR_INIT_ZVAL_NREF(_9); ZVAL_LONG(_9, numberPage); zephir_update_property_zval(page, SL("current"), _9 TSRMLS_CC); zephir_update_property_zval(page, SL("last"), totalPages TSRMLS_CC); zephir_update_property_zval(page, SL("next"), next TSRMLS_CC); zephir_update_property_zval(page, SL("total_pages"), totalPages TSRMLS_CC); zephir_update_property_zval(page, SL("total_items"), rowcount TSRMLS_CC); _9 = zephir_fetch_nproperty_this(this_ptr, SL("_limitRows"), PH_NOISY_CC); zephir_update_property_zval(page, SL("limit"), _9 TSRMLS_CC); RETURN_CCTOR(page); }
/** * Writes the log to the stream itself * * @link http://www.firephp.org/Wiki/Reference/Protocol */ PHP_METHOD(Phalcon_Logger_Adapter_Firephp, logInternal) { HashTable *_10; HashPosition _9; zephir_fcall_cache_entry *_4 = NULL; zval *context = NULL; int type, time, ZEPHIR_LAST_CALL_STATUS; zval *message_param = NULL, *type_param = NULL, *time_param = NULL, *context_param = NULL, *chunk = NULL, *format = NULL, *chString = NULL, *content = NULL, *key = NULL, *_0, *_2, *_5 = NULL, *_6, *_7, _8, **_11, *_1$$3, _3$$4 = zval_used_for_init, *_12$$5 = NULL, *_13$$5, *_14$$5; zval *message = NULL; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 4, 0, &message_param, &type_param, &time_param, &context_param); zephir_get_strval(message, message_param); type = zephir_get_intval(type_param); time = zephir_get_intval(time_param); zephir_get_arrval(context, context_param); _0 = zephir_fetch_static_property_ce(phalcon_logger_adapter_firephp_ce, SL("_index") TSRMLS_CC); if (Z_TYPE_P(_0) == IS_NULL) { ZEPHIR_INIT_ZVAL_NREF(_1$$3); ZVAL_LONG(_1$$3, 1); zephir_update_static_property_ce(phalcon_logger_adapter_firephp_ce, SL("_index"), &_1$$3 TSRMLS_CC); } _2 = zephir_fetch_static_property_ce(phalcon_logger_adapter_firephp_ce, SL("_initialized") TSRMLS_CC); if (!ZEPHIR_IS_TRUE_IDENTICAL(_2)) { ZEPHIR_SINIT_VAR(_3$$4); ZVAL_STRING(&_3$$4, "X-Wf-Protocol-1: http://meta.wildfirehq.org/Protocol/JsonStream/0.2", 0); ZEPHIR_CALL_FUNCTION(NULL, "header", &_4, 238, &_3$$4); zephir_check_call_status(); ZEPHIR_SINIT_NVAR(_3$$4); ZVAL_STRING(&_3$$4, "X-Wf-1-Plugin-1: http://meta.firephp.org/Wildfire/Plugin/FirePHP/Library-FirePHPCore/0.3", 0); ZEPHIR_CALL_FUNCTION(NULL, "header", &_4, 238, &_3$$4); zephir_check_call_status(); ZEPHIR_SINIT_NVAR(_3$$4); ZVAL_STRING(&_3$$4, "X-Wf-Structure-1: http://meta.firephp.org/Wildfire/Structure/FirePHP/FirebugConsole/0.1", 0); ZEPHIR_CALL_FUNCTION(NULL, "header", &_4, 238, &_3$$4); zephir_check_call_status(); zephir_update_static_property_ce(phalcon_logger_adapter_firephp_ce, SL("_initialized"), &ZEPHIR_GLOBAL(global_true) TSRMLS_CC); } ZEPHIR_CALL_METHOD(&_5, this_ptr, "getformatter", NULL, 0); zephir_check_call_status(); ZEPHIR_INIT_VAR(_6); ZVAL_LONG(_6, type); ZEPHIR_INIT_VAR(_7); ZVAL_LONG(_7, time); ZEPHIR_CALL_METHOD(&format, _5, "format", NULL, 0, message, _6, _7, context); zephir_check_call_status(); ZEPHIR_SINIT_VAR(_8); ZVAL_LONG(&_8, 4500); ZEPHIR_CALL_FUNCTION(&chunk, "str_split", NULL, 71, format, &_8); zephir_check_call_status(); zephir_is_iterable(chunk, &_10, &_9, 0, 0, "phalcon/logger/adapter/firephp.zep", 96); for ( ; zephir_hash_get_current_data_ex(_10, (void**) &_11, &_9) == SUCCESS ; zephir_hash_move_forward_ex(_10, &_9) ) { ZEPHIR_GET_HMKEY(key, _10, _9); ZEPHIR_GET_HVALUE(chString, _11); ZEPHIR_OBS_NVAR(_12$$5); zephir_read_static_property_ce(&_12$$5, phalcon_logger_adapter_firephp_ce, SL("_index") TSRMLS_CC); ZEPHIR_INIT_NVAR(content); ZEPHIR_CONCAT_SVSV(content, "X-Wf-1-1-1-", _12$$5, ": ", chString); if (zephir_array_isset_long(chunk, (zephir_get_numberval(key) + 1))) { zephir_concat_self_str(&content, SL("|\\") TSRMLS_CC); } ZEPHIR_CALL_FUNCTION(NULL, "header", &_4, 238, content); zephir_check_call_status(); _13$$5 = zephir_fetch_static_property_ce(phalcon_logger_adapter_firephp_ce, SL("_index") TSRMLS_CC); ZEPHIR_INIT_ZVAL_NREF(_14$$5); ZVAL_LONG(_14$$5, (zephir_get_numberval(_13$$5) + 1)); zephir_update_static_property_ce(phalcon_logger_adapter_firephp_ce, SL("_index"), &_14$$5 TSRMLS_CC); } ZEPHIR_MM_RESTORE(); }
/** * @todo this method can be write differently with (P< style match * Matches a user submitted path with parts defined by a map. Assigns and * returns an array of variables on a successful match. * * @param string $path Path used to match against this routing map * @return array|false An array of assigned values or a false on a mismatch */ PHP_METHOD(Yaf_Route_Rewrite, _match) { zephir_nts_static zephir_fcall_cache_entry *_27 = NULL, *_33 = NULL; zend_bool _12, _28, _32; HashTable *_7, *_22, *_35; HashPosition _6, _21, _34; int staticCount, pathStaticCount, ZEPHIR_LAST_CALL_STATUS; zval *path_param = NULL, *values, *matchedPath = NULL, *parts, *variables, *wildcardData, *name = NULL, *part = NULL, *pos = NULL, *pathMatch, *count = NULL, *i = NULL, *varr = NULL, *pathPart = NULL, *tmpReturn = NULL, *_0, *_1 = NULL, *_2 = NULL, *_3, _4 = zval_used_for_init, _5 = zval_used_for_init, **_8, _9 = zval_used_for_init, _10 = zval_used_for_init, *_11 = NULL, _13 = zval_used_for_init, _14 = zval_used_for_init, *_15 = NULL, _16 = zval_used_for_init, _17 = zval_used_for_init, *_18 = NULL, _19 = zval_used_for_init, *_20 = NULL, **_23, *_24 = NULL, *_25, *_26, *_29 = NULL, *_30, *_31 = NULL, **_36; zval *path = NULL; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 1, 0, &path_param); zephir_get_strval(path, path_param); staticCount = 0; pathStaticCount = 0; ZEPHIR_INIT_VAR(values); array_init(values); ZEPHIR_INIT_VAR(matchedPath); ZVAL_STRING(matchedPath, "", 1); ZEPHIR_INIT_VAR(parts); array_init(parts); ZEPHIR_INIT_VAR(variables); array_init(variables); ZEPHIR_INIT_VAR(wildcardData); array_init(wildcardData); _0 = zephir_fetch_nproperty_this(this_ptr, SL("_route"), PH_NOISY_CC); if (!ZEPHIR_IS_STRING_IDENTICAL(_0, "")) { ZEPHIR_INIT_VAR(_1); ZEPHIR_INIT_VAR(_2); _3 = zephir_fetch_nproperty_this(this_ptr, SL("_route"), PH_NOISY_CC); ZEPHIR_SINIT_VAR(_4); ZVAL_STRING(&_4, "/", 0); zephir_fast_trim(_2, _3, &_4, ZEPHIR_TRIM_BOTH TSRMLS_CC); ZEPHIR_SINIT_VAR(_5); ZVAL_STRING(&_5, "/", 0); zephir_fast_explode(_1, &_5, _2, LONG_MAX TSRMLS_CC); zephir_is_iterable(_1, &_7, &_6, 0, 0, "yaf/Route/rewrite.zep", 135); for ( ; zephir_hash_get_current_data_ex(_7, (void**) &_8, &_6) == SUCCESS ; zephir_hash_move_forward_ex(_7, &_6) ) { ZEPHIR_GET_HMKEY(pos, _7, _6); ZEPHIR_GET_HVALUE(part, _8); ZEPHIR_SINIT_NVAR(_9); ZVAL_LONG(&_9, 0); ZEPHIR_SINIT_NVAR(_10); ZVAL_LONG(&_10, 1); ZEPHIR_INIT_NVAR(_11); zephir_substr(_11, part, 0 , 1 , 0); _12 = ZEPHIR_IS_STRING(_11, ":"); if (_12) { ZEPHIR_SINIT_NVAR(_13); ZVAL_LONG(&_13, 1); ZEPHIR_SINIT_NVAR(_14); ZVAL_LONG(&_14, 1); ZEPHIR_INIT_NVAR(_15); zephir_substr(_15, part, 1 , 1 , 0); _12 = !ZEPHIR_IS_STRING(_15, ":"); } if (_12) { ZEPHIR_SINIT_NVAR(_16); ZVAL_LONG(&_16, 1); ZEPHIR_INIT_NVAR(name); zephir_substr(name, part, 1 , 0, ZEPHIR_SUBSTR_NO_LENGTH); zephir_array_update_zval(&parts, pos, &ZEPHIR_GLOBAL(global_null), PH_COPY | PH_SEPARATE); zephir_array_update_zval(&variables, pos, &name, PH_COPY | PH_SEPARATE); } else { ZEPHIR_SINIT_NVAR(_16); ZVAL_LONG(&_16, 0); ZEPHIR_SINIT_NVAR(_17); ZVAL_LONG(&_17, 1); ZEPHIR_INIT_NVAR(_18); zephir_substr(_18, part, 0 , 1 , 0); if (ZEPHIR_IS_STRING(_18, ":")) { ZEPHIR_SINIT_NVAR(_19); ZVAL_LONG(&_19, 1); ZEPHIR_INIT_NVAR(_20); zephir_substr(_20, part, 1 , 0, ZEPHIR_SUBSTR_NO_LENGTH); ZEPHIR_CPY_WRT(part, _20); } zephir_array_update_zval(&parts, pos, &part, PH_COPY | PH_SEPARATE); if (!ZEPHIR_IS_STRING_IDENTICAL(part, "*")) { staticCount++; } } } } if (!ZEPHIR_IS_STRING_IDENTICAL(path, "")) { ZEPHIR_INIT_VAR(pathMatch); ZEPHIR_SINIT_NVAR(_4); ZVAL_STRING(&_4, "/", 0); zephir_fast_explode(pathMatch, &_4, path, LONG_MAX TSRMLS_CC); zephir_is_iterable(pathMatch, &_22, &_21, 0, 0, "yaf/Route/rewrite.zep", 193); for ( ; zephir_hash_get_current_data_ex(_22, (void**) &_23, &_21) == SUCCESS ; zephir_hash_move_forward_ex(_22, &_21) ) { ZEPHIR_GET_HMKEY(pos, _22, _21); ZEPHIR_GET_HVALUE(pathPart, _23); if (!(zephir_array_key_exists(parts, pos TSRMLS_CC))) { RETURN_MM_BOOL(0); } ZEPHIR_INIT_LNVAR(_24); ZEPHIR_CONCAT_VS(_24, pathPart, "/"); zephir_concat_self(&matchedPath, _24 TSRMLS_CC); zephir_array_fetch(&_25, parts, pos, PH_NOISY | PH_READONLY, "yaf/Route/rewrite.zep", 150 TSRMLS_CC); if (ZEPHIR_IS_STRING(_25, "*")) { ZEPHIR_INIT_NVAR(count); ZVAL_LONG(count, zephir_fast_count_int(pathMatch TSRMLS_CC)); ZEPHIR_CPY_WRT(i, pos); while (1) { if (!(ZEPHIR_LT(i, count))) { break; } zephir_array_fetch(&_26, pathMatch, i, PH_NOISY | PH_READONLY, "yaf/Route/rewrite.zep", 154 TSRMLS_CC); ZEPHIR_CALL_FUNCTION(&varr, "urldecode", &_27, _26); zephir_check_call_status(); _12 = !(zephir_array_isset(wildcardData, varr)); if (_12) { _3 = zephir_fetch_nproperty_this(this_ptr, SL("_default"), PH_NOISY_CC); _12 = !(zephir_array_isset(_3, varr)); } _28 = _12; if (_28) { _28 = !(zephir_array_isset(values, varr)); } if (_28) { ZEPHIR_INIT_LNVAR(_29); if (zephir_array_isset_long(pathMatch, (zephir_get_numberval(i) + 1))) { zephir_array_fetch_long(&_30, pathMatch, (zephir_get_numberval(i) + 1), PH_NOISY | PH_READONLY, "yaf/Route/rewrite.zep", 157 TSRMLS_CC); ZEPHIR_CALL_FUNCTION(&_29, "urldecode", &_27, _30); zephir_check_call_status(); } else { ZEPHIR_INIT_NVAR(_29); ZVAL_NULL(_29); } zephir_array_update_zval(&wildcardData, varr, &_29, PH_COPY | PH_SEPARATE); } ZEPHIR_INIT_NVAR(_1); ZVAL_LONG(_1, 2); ZEPHIR_ADD_ASSIGN(i, _1); } ZEPHIR_INIT_NVAR(matchedPath); ZEPHIR_SINIT_NVAR(_5); ZVAL_STRING(&_5, "/", 0); zephir_fast_join(matchedPath, &_5, pathMatch TSRMLS_CC); break; } if (zephir_array_isset(variables, pos)) { ZEPHIR_OBS_NVAR(name); zephir_array_fetch(&name, variables, pos, PH_NOISY, "yaf/Route/rewrite.zep", 165 TSRMLS_CC); } else { ZEPHIR_INIT_NVAR(name); ZVAL_NULL(name); } ZEPHIR_CALL_FUNCTION(&_31, "urldecode", &_27, pathPart); zephir_check_call_status(); ZEPHIR_CPY_WRT(pathPart, _31); ZEPHIR_OBS_NVAR(part); zephir_array_fetch(&part, parts, pos, PH_NOISY, "yaf/Route/rewrite.zep", 167 TSRMLS_CC); ZEPHIR_SINIT_NVAR(_9); ZVAL_LONG(&_9, 0); ZEPHIR_SINIT_NVAR(_10); ZVAL_LONG(&_10, 2); ZEPHIR_INIT_NVAR(_2); zephir_substr(_2, part, 0 , 2 , 0); if (ZEPHIR_IS_STRING_IDENTICAL(_2, "@@")) { ZEPHIR_SINIT_NVAR(_13); ZVAL_LONG(&_13, 1); ZEPHIR_INIT_NVAR(_11); zephir_substr(_11, part, 1 , 0, ZEPHIR_SUBSTR_NO_LENGTH); ZEPHIR_CPY_WRT(part, _11); } _28 = Z_TYPE_P(name) == IS_NULL; if (_28) { _28 = !ZEPHIR_IS_EQUAL(part, pathPart); } if (_28) { RETURN_MM_BOOL(0); } _32 = Z_TYPE_P(part) != IS_NULL; if (_32) { ZEPHIR_INIT_LNVAR(_29); ZEPHIR_CONCAT_VSSS(_29, part, "#^", "$#", "iu"); ZEPHIR_CALL_FUNCTION(&_31, "preg_match", &_33, _29, pathPart); zephir_check_call_status(); _32 = !zephir_is_true(_31); } if (_32) { RETURN_MM_BOOL(0); } if (Z_TYPE_P(name) != IS_NULL) { zephir_array_update_zval(&values, name, &pathPart, PH_COPY | PH_SEPARATE); } else { pathStaticCount++; } } } if (staticCount != pathStaticCount) { RETURN_MM_BOOL(0); } ZEPHIR_INIT_VAR(tmpReturn); zephir_add_function_ex(tmpReturn, values, wildcardData TSRMLS_CC); zephir_is_iterable(variables, &_35, &_34, 0, 0, "yaf/Route/rewrite.zep", 212); for ( ; zephir_hash_get_current_data_ex(_35, (void**) &_36, &_34) == SUCCESS ; zephir_hash_move_forward_ex(_35, &_34) ) { ZEPHIR_GET_HVALUE(varr, _36); if (!(zephir_array_key_exists(tmpReturn, varr TSRMLS_CC))) { RETURN_MM_BOOL(0); } } _12 = Z_TYPE_P(values) == IS_NULL; if (_12) { _12 = Z_TYPE_P(wildcardData) == IS_NULL; } _32 = _12; if (_32) { _32 = staticCount != 0; } if (_32) { _3 = zephir_fetch_nproperty_this(this_ptr, SL("_default"), PH_NOISY_CC); ZEPHIR_INIT_LNVAR(_24); zephir_add_function_ex(_24, tmpReturn, _3 TSRMLS_CC); ZEPHIR_CPY_WRT(tmpReturn, _24); } RETURN_CCTOR(tmpReturn); }
/** * @param Ldap $ldap Zend\Ldap\Ldap object * @param string $str Informative exception message * @param int $code LDAP error code */ PHP_METHOD(Zend_Ldap_Exception_LdapException, __construct) { zephir_nts_static zephir_fcall_cache_entry *_3 = NULL; int code, ZEPHIR_LAST_CALL_STATUS; zval *str = NULL; zval *ldap = NULL, *str_param = NULL, *code_param = NULL, *errors, *message = NULL, *oldCode, *_0 = NULL, *_1 = NULL, _2, *_4; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 0, 3, &ldap, &str_param, &code_param); if (!ldap) { ldap = ZEPHIR_GLOBAL(global_null); } if (!str_param) { ZEPHIR_INIT_VAR(str); ZVAL_EMPTY_STRING(str); } else { zephir_get_strval(str, str_param); } if (!code_param) { code = 0; } else { code = zephir_get_intval(code_param); } ZEPHIR_INIT_VAR(errors); array_init(errors); ZEPHIR_INIT_VAR(message); ZVAL_STRING(message, "", 1); if (Z_TYPE_P(ldap) != IS_NULL) { ZEPHIR_INIT_VAR(oldCode); ZVAL_LONG(oldCode, code); ZEPHIR_INIT_VAR(_1); ZVAL_LONG(_1, code); ZEPHIR_CALL_METHOD(&_0, ldap, "getlasterror", NULL, _1, errors); zephir_check_call_status(); ZEPHIR_INIT_NVAR(message); ZEPHIR_CONCAT_VS(message, _0, ": "); if (code == 0) { ZEPHIR_INIT_NVAR(message); ZVAL_STRING(message, "", 1); code = zephir_get_numberval(oldCode); } } if (ZEPHIR_IS_EMPTY(message)) { if (code > 0) { ZEPHIR_SINIT_VAR(_2); ZVAL_LONG(&_2, code); ZEPHIR_CALL_FUNCTION(&_0, "dechex", &_3, &_2); zephir_check_call_status(); ZEPHIR_INIT_VAR(_4); ZEPHIR_CONCAT_SVS(_4, "0x", _0, ": "); zephir_concat_self(&message, _4 TSRMLS_CC); } } if (!(ZEPHIR_IS_EMPTY(str))) { zephir_concat_self(&message, str TSRMLS_CC); } else { zephir_concat_self_str(&message, SL("no exception message") TSRMLS_CC); } ZEPHIR_INIT_NVAR(_1); ZVAL_LONG(_1, code); ZEPHIR_CALL_PARENT(NULL, zend_ldap_exception_ldapexception_ce, this_ptr, "__construct", NULL, message, _1); zephir_check_call_status(); 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(); }
/** * Stores cached content into the file backend and stops the frontend * * @param int|string keyName * @param string content * @param long lifetime * @param boolean stopBuffer */ PHP_METHOD(Phalcon_Cache_Backend_Mongo, save) { zval *_2$$14; int ZEPHIR_LAST_CALL_STATUS; zend_bool stopBuffer; zval *keyName = NULL, *content = NULL, *lifetime = NULL, *stopBuffer_param = NULL, *lastkey = NULL, *frontend = NULL, *cachedContent = NULL, *tmp = NULL, *ttl = NULL, *collection = NULL, *timestamp = NULL, *conditions = NULL, *document = NULL, *preparedContent = NULL, *isBuffering = NULL, *data = NULL, *success = NULL, *_1, *_0$$4, *_3$$14; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 0, 4, &keyName, &content, &lifetime, &stopBuffer_param); if (!keyName) { keyName = ZEPHIR_GLOBAL(global_null); } if (!content) { content = ZEPHIR_GLOBAL(global_null); } if (!lifetime) { lifetime = ZEPHIR_GLOBAL(global_null); } if (!stopBuffer_param) { stopBuffer = 1; } else { stopBuffer = zephir_get_boolval(stopBuffer_param); } ZEPHIR_INIT_VAR(conditions); array_init(conditions); ZEPHIR_INIT_VAR(data); array_init(data); if (Z_TYPE_P(keyName) == IS_NULL) { ZEPHIR_OBS_VAR(lastkey); zephir_read_property_this(&lastkey, this_ptr, SL("_lastKey"), PH_NOISY_CC); } else { _0$$4 = zephir_fetch_nproperty_this(this_ptr, SL("_prefix"), PH_NOISY_CC); ZEPHIR_INIT_NVAR(lastkey); ZEPHIR_CONCAT_VV(lastkey, _0$$4, keyName); zephir_update_property_this(this_ptr, SL("_lastKey"), lastkey TSRMLS_CC); } if (!(zephir_is_true(lastkey))) { ZEPHIR_THROW_EXCEPTION_DEBUG_STR(phalcon_cache_exception_ce, "Cache must be started first", "phalcon/cache/backend/mongo.zep", 208); return; } ZEPHIR_OBS_VAR(frontend); zephir_read_property_this(&frontend, this_ptr, SL("_frontend"), PH_NOISY_CC); if (Z_TYPE_P(content) == IS_NULL) { ZEPHIR_CALL_METHOD(&cachedContent, frontend, "getcontent", NULL, 0); zephir_check_call_status(); } else { ZEPHIR_CPY_WRT(cachedContent, content); } if (!(zephir_is_numeric(cachedContent))) { ZEPHIR_CALL_METHOD(&preparedContent, frontend, "beforestore", NULL, 0, cachedContent); zephir_check_call_status(); } else { ZEPHIR_CPY_WRT(preparedContent, cachedContent); } if (Z_TYPE_P(lifetime) == IS_NULL) { ZEPHIR_OBS_VAR(tmp); zephir_read_property_this(&tmp, this_ptr, SL("_lastLifetime"), PH_NOISY_CC); if (!(zephir_is_true(tmp))) { ZEPHIR_CALL_METHOD(&ttl, frontend, "getlifetime", NULL, 0); zephir_check_call_status(); } else { ZEPHIR_CPY_WRT(ttl, tmp); } } else { ZEPHIR_CPY_WRT(ttl, lifetime); } ZEPHIR_CALL_METHOD(&collection, this_ptr, "_getcollection", NULL, 117); zephir_check_call_status(); ZEPHIR_INIT_VAR(_1); zephir_time(_1); ZEPHIR_INIT_VAR(timestamp); ZVAL_LONG(timestamp, (zephir_get_numberval(_1) + zephir_get_intval(ttl))); zephir_array_update_string(&conditions, SL("key"), &lastkey, PH_COPY | PH_SEPARATE); ZEPHIR_CALL_METHOD(&document, collection, "findone", NULL, 0, conditions); zephir_check_call_status(); if (Z_TYPE_P(document) == IS_ARRAY) { zephir_array_update_string(&document, SL("time"), ×tamp, PH_COPY | PH_SEPARATE); zephir_array_update_string(&document, SL("data"), &preparedContent, PH_COPY | PH_SEPARATE); ZEPHIR_INIT_VAR(_2$$14); zephir_create_array(_2$$14, 1, 0 TSRMLS_CC); ZEPHIR_OBS_VAR(_3$$14); zephir_array_fetch_string(&_3$$14, document, SL("_id"), PH_NOISY, "phalcon/cache/backend/mongo.zep", 243 TSRMLS_CC); zephir_array_update_string(&_2$$14, SL("_id"), &_3$$14, PH_COPY | PH_SEPARATE); ZEPHIR_CALL_METHOD(&success, collection, "update", NULL, 0, _2$$14, document); zephir_check_call_status(); } else { zephir_array_update_string(&data, SL("key"), &lastkey, PH_COPY | PH_SEPARATE); zephir_array_update_string(&data, SL("time"), ×tamp, PH_COPY | PH_SEPARATE); zephir_array_update_string(&data, SL("data"), &preparedContent, PH_COPY | PH_SEPARATE); ZEPHIR_CALL_METHOD(&success, collection, "insert", NULL, 0, data); zephir_check_call_status(); } if (!(zephir_is_true(success))) { ZEPHIR_THROW_EXCEPTION_DEBUG_STR(phalcon_cache_exception_ce, "Failed storing data in mongodb", "phalcon/cache/backend/mongo.zep", 252); return; } ZEPHIR_CALL_METHOD(&isBuffering, frontend, "isbuffering", NULL, 0); zephir_check_call_status(); if (stopBuffer == 1) { ZEPHIR_CALL_METHOD(NULL, frontend, "stop", NULL, 0); zephir_check_call_status(); } if (ZEPHIR_IS_TRUE_IDENTICAL(isBuffering)) { zend_print_zval(cachedContent, 0); } if (0) { zephir_update_property_this(this_ptr, SL("_started"), ZEPHIR_GLOBAL(global_true) TSRMLS_CC); } else { zephir_update_property_this(this_ptr, SL("_started"), ZEPHIR_GLOBAL(global_false) TSRMLS_CC); } RETURN_CCTOR(success); }
/** * Stores cached content into the file backend and stops the frontend * * @param int|string keyName * @param string content * @param long lifetime * @param boolean stopBuffer */ PHP_METHOD(Phalcon_Cache_Backend_Mongo, save) { zval *_2; zephir_nts_static zephir_fcall_cache_entry *_0 = NULL; int ZEPHIR_LAST_CALL_STATUS; zval *keyName = NULL, *content = NULL, *lifetime = NULL, *stopBuffer = NULL, *lastkey = NULL, *prefix, *frontend, *cachedContent = NULL, *tmp, *ttl = NULL, *collection = NULL, *timestamp, *conditions, *document = NULL, *preparedContent = NULL, *isBuffering = NULL, *data, *_1, *_3; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 0, 4, &keyName, &content, &lifetime, &stopBuffer); if (!keyName) { keyName = ZEPHIR_GLOBAL(global_null); } if (!content) { content = ZEPHIR_GLOBAL(global_null); } if (!lifetime) { lifetime = ZEPHIR_GLOBAL(global_null); } if (!stopBuffer) { stopBuffer = ZEPHIR_GLOBAL(global_true); } ZEPHIR_INIT_VAR(conditions); array_init(conditions); ZEPHIR_INIT_VAR(data); array_init(data); if (!(zephir_is_true(keyName))) { ZEPHIR_OBS_VAR(lastkey); zephir_read_property_this(&lastkey, this_ptr, SL("_lastKey"), PH_NOISY_CC); } else { ZEPHIR_OBS_VAR(prefix); zephir_read_property_this(&prefix, this_ptr, SL("_prefix"), PH_NOISY_CC); ZEPHIR_INIT_NVAR(lastkey); ZEPHIR_CONCAT_VV(lastkey, prefix, keyName); } if (!(zephir_is_true(lastkey))) { ZEPHIR_THROW_EXCEPTION_DEBUG_STR(phalcon_cache_exception_ce, "Cache must be started first", "phalcon/cache/backend/mongo.zep", 206); return; } ZEPHIR_OBS_VAR(frontend); zephir_read_property_this(&frontend, this_ptr, SL("_frontend"), PH_NOISY_CC); if (!(zephir_is_true(content))) { ZEPHIR_CALL_METHOD(&cachedContent, frontend, "getcontent", NULL); zephir_check_call_status(); } else { ZEPHIR_CPY_WRT(cachedContent, content); } if (!(zephir_is_numeric(cachedContent))) { ZEPHIR_CALL_METHOD(&preparedContent, frontend, "beforestore", NULL, cachedContent); zephir_check_call_status(); } if (!(zephir_is_true(lifetime))) { ZEPHIR_OBS_VAR(tmp); zephir_read_property_this(&tmp, this_ptr, SL("_lastLifetime"), PH_NOISY_CC); if (!(zephir_is_true(tmp))) { ZEPHIR_CALL_METHOD(&ttl, frontend, "getlifetime", NULL); zephir_check_call_status(); } else { ZEPHIR_CPY_WRT(ttl, tmp); } } else { ZEPHIR_CPY_WRT(ttl, lifetime); } ZEPHIR_CALL_METHOD(&collection, this_ptr, "_getcollection", &_0); zephir_check_call_status(); ZEPHIR_INIT_VAR(_1); zephir_time(_1); ZEPHIR_INIT_VAR(timestamp); ZVAL_LONG(timestamp, (zephir_get_numberval(_1) + zephir_get_intval(ttl))); zephir_array_update_string(&conditions, SL("key"), &lastkey, PH_COPY | PH_SEPARATE); ZEPHIR_CALL_METHOD(&document, collection, "findone", NULL, conditions); zephir_check_call_status(); if (Z_TYPE_P(document) == IS_ARRAY) { zephir_array_update_string(&document, SL("time"), ×tamp, PH_COPY | PH_SEPARATE); if (!(zephir_is_numeric(cachedContent))) { zephir_array_update_string(&document, SL("data"), &preparedContent, PH_COPY | PH_SEPARATE); } else { zephir_array_update_string(&document, SL("data"), &cachedContent, PH_COPY | PH_SEPARATE); } ZEPHIR_INIT_VAR(_2); zephir_create_array(_2, 1, 0 TSRMLS_CC); ZEPHIR_OBS_VAR(_3); zephir_array_fetch_string(&_3, document, SL("_id"), PH_NOISY, "phalcon/cache/backend/mongo.zep", 246 TSRMLS_CC); zephir_array_update_string(&_2, SL("_id"), &_3, PH_COPY | PH_SEPARATE); ZEPHIR_CALL_METHOD(NULL, collection, "update", NULL, _2, document); zephir_check_call_status(); } else { zephir_array_update_string(&data, SL("key"), &lastkey, PH_COPY | PH_SEPARATE); zephir_array_update_string(&data, SL("time"), ×tamp, PH_COPY | PH_SEPARATE); if (!(zephir_is_numeric(cachedContent))) { zephir_array_update_string(&data, SL("data"), &preparedContent, PH_COPY | PH_SEPARATE); } else { zephir_array_update_string(&data, SL("data"), &cachedContent, PH_COPY | PH_SEPARATE); } ZEPHIR_CALL_METHOD(NULL, collection, "insert", NULL, data); zephir_check_call_status(); } ZEPHIR_CALL_METHOD(&isBuffering, frontend, "isbuffering", NULL); zephir_check_call_status(); if (ZEPHIR_IS_TRUE_IDENTICAL(stopBuffer)) { ZEPHIR_CALL_METHOD(NULL, frontend, "stop", NULL); zephir_check_call_status(); } if (ZEPHIR_IS_TRUE_IDENTICAL(isBuffering)) { zend_print_zval(cachedContent, 0); } zephir_update_property_this(this_ptr, SL("_started"), (0) ? ZEPHIR_GLOBAL(global_true) : ZEPHIR_GLOBAL(global_false) TSRMLS_CC); ZEPHIR_MM_RESTORE(); }
PHP_METHOD(Test_SpectralNorm, process) { zephir_fcall_cache_entry *_5 = NULL, *_9 = NULL, *_14 = NULL; zend_bool _1, _6, _10; zval *n_param = NULL, *u, *v, *w, *_0 = NULL, *_4 = NULL, *_13 = NULL, *_15 = NULL, *_16 = NULL, *_17 = NULL, _18; int n, i, vv = 0, vBv = 0, ZEPHIR_LAST_CALL_STATUS, _2, _3, _7, _8, _11, _12; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 1, 0, &n_param); n = zephir_get_intval(n_param); ZEPHIR_INIT_VAR(u); object_init_ex(u, spl_ce_SplFixedArray); ZEPHIR_INIT_VAR(_0); ZVAL_LONG(_0, n); ZEPHIR_CALL_METHOD(NULL, u, "__construct", NULL, 73, _0); zephir_check_call_status(); ZEPHIR_INIT_VAR(v); object_init_ex(v, spl_ce_SplFixedArray); ZEPHIR_INIT_NVAR(_0); ZVAL_LONG(_0, n); ZEPHIR_CALL_METHOD(NULL, v, "__construct", NULL, 73, _0); zephir_check_call_status(); ZEPHIR_INIT_VAR(w); object_init_ex(w, spl_ce_SplFixedArray); ZEPHIR_INIT_NVAR(_0); ZVAL_LONG(_0, n); ZEPHIR_CALL_METHOD(NULL, w, "__construct", NULL, 73, _0); zephir_check_call_status(); _3 = (n - 1); _2 = 0; _1 = 0; if (_2 <= _3) { while (1) { if (_1) { _2++; if (!(_2 <= _3)) { break; } } else { _1 = 1; } i = _2; ZEPHIR_INIT_NVAR(_0); ZVAL_LONG(_0, i); ZEPHIR_INIT_NVAR(_4); ZVAL_LONG(_4, 1); ZEPHIR_CALL_METHOD(NULL, u, "offsetset", &_5, 74, _0, _4); zephir_check_call_status(); ZEPHIR_INIT_NVAR(_0); ZVAL_LONG(_0, i); ZEPHIR_INIT_NVAR(_4); ZVAL_LONG(_4, 1); ZEPHIR_CALL_METHOD(NULL, v, "offsetset", &_5, 74, _0, _4); zephir_check_call_status(); ZEPHIR_INIT_NVAR(_0); ZVAL_LONG(_0, i); ZEPHIR_INIT_NVAR(_4); ZVAL_LONG(_4, 1); ZEPHIR_CALL_METHOD(NULL, w, "offsetset", &_5, 74, _0, _4); zephir_check_call_status(); } } _8 = 9; _7 = 0; _6 = 0; if (_7 <= _8) { while (1) { if (_6) { _7++; if (!(_7 <= _8)) { break; } } else { _6 = 1; } i = _7; ZEPHIR_INIT_NVAR(_0); ZVAL_LONG(_0, n); ZEPHIR_CALL_METHOD(NULL, this_ptr, "atau", &_9, 75, _0, u, v, w); zephir_check_call_status(); ZEPHIR_INIT_NVAR(_0); ZVAL_LONG(_0, n); ZEPHIR_CALL_METHOD(NULL, this_ptr, "atau", &_9, 75, _0, v, u, w); zephir_check_call_status(); } } _12 = (n - 1); _11 = 0; _10 = 0; if (_11 <= _12) { while (1) { if (_10) { _11++; if (!(_11 <= _12)) { break; } } else { _10 = 1; } i = _11; ZEPHIR_INIT_NVAR(_0); ZVAL_LONG(_0, i); ZEPHIR_CALL_METHOD(&_13, u, "offsetget", &_14, 76, _0); zephir_check_call_status(); ZEPHIR_INIT_NVAR(_0); ZVAL_LONG(_0, i); ZEPHIR_CALL_METHOD(&_15, v, "offsetget", &_14, 76, _0); zephir_check_call_status(); ZEPHIR_INIT_LNVAR(_16); mul_function(_16, _13, _15 TSRMLS_CC); vBv += zephir_get_numberval(_16); ZEPHIR_INIT_NVAR(_0); ZVAL_LONG(_0, i); ZEPHIR_CALL_METHOD(&_13, v, "offsetget", &_14, 76, _0); zephir_check_call_status(); ZEPHIR_INIT_NVAR(_0); ZVAL_LONG(_0, i); ZEPHIR_CALL_METHOD(&_15, v, "offsetget", &_14, 76, _0); zephir_check_call_status(); ZEPHIR_INIT_LNVAR(_17); mul_function(_17, _13, _15 TSRMLS_CC); vv += zephir_get_numberval(_17); } } ZEPHIR_SINIT_VAR(_18); ZVAL_DOUBLE(&_18, zephir_safe_div_long_long(vBv, vv TSRMLS_CC)); ZEPHIR_RETURN_CALL_FUNCTION("sqrt", NULL, 9, &_18); zephir_check_call_status(); RETURN_MM(); }
/** * Executes a prepared statement binding. This function uses integer indexes starting from zero * *<code> * use Phalcon\Db\Column; * * $statement = $db->prepare('SELECT * FROM robots WHERE name = :name'); * $result = $connection->executePrepared($statement, ['name' => 'Voltron'], ['name' => Column::BIND_PARAM_INT]); *</code> * * @param \PDOStatement statement * @param array placeholders * @param array dataTypes * @return \PDOStatement */ PHP_METHOD(Phalcon_Db_Adapter_Pdo, executePrepared) { zval *_6$$13 = NULL; zend_bool _3$$3; HashTable *_1, *_9$$22, *_14$$28; HashPosition _0, _8$$22, _13$$28; int ZEPHIR_LAST_CALL_STATUS; zephir_fcall_cache_entry *_5 = NULL, *_7 = NULL; zval *placeholders = NULL; zval *statement, *placeholders_param = NULL, *dataTypes, *wildcard = NULL, *value = NULL, *type = NULL, *castValue = NULL, *parameter = NULL, *position = NULL, *itemValue = NULL, **_2, _4$$12 = zval_used_for_init, **_10$$22, *_11$$24 = NULL, *_12$$25 = NULL, **_15$$28, *_16$$29 = NULL; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 3, 0, &statement, &placeholders_param, &dataTypes); placeholders = placeholders_param; zephir_is_iterable(placeholders, &_1, &_0, 0, 0, "phalcon/db/adapter/pdo.zep", 273); for ( ; zephir_hash_get_current_data_ex(_1, (void**) &_2, &_0) == SUCCESS ; zephir_hash_move_forward_ex(_1, &_0) ) { ZEPHIR_GET_HMKEY(wildcard, _1, _0); ZEPHIR_GET_HVALUE(value, _2); if (Z_TYPE_P(wildcard) == IS_LONG) { ZEPHIR_INIT_NVAR(parameter); ZVAL_LONG(parameter, (zephir_get_numberval(wildcard) + 1)); } else if (Z_TYPE_P(wildcard) == IS_STRING) { ZEPHIR_CPY_WRT(parameter, wildcard); } else { ZEPHIR_THROW_EXCEPTION_DEBUG_STR(phalcon_db_exception_ce, "Invalid bind parameter (1)", "phalcon/db/adapter/pdo.zep", 200); return; } _3$$3 = Z_TYPE_P(dataTypes) == IS_ARRAY; if (_3$$3) { ZEPHIR_OBS_NVAR(type); _3$$3 = zephir_array_isset_fetch(&type, dataTypes, wildcard, 0 TSRMLS_CC); } if (_3$$3) { if (ZEPHIR_IS_LONG(type, 32)) { ZEPHIR_INIT_NVAR(castValue); ZVAL_DOUBLE(castValue, zephir_get_doubleval(value)); ZEPHIR_INIT_NVAR(type); ZVAL_LONG(type, 1024); } else { if (ZEPHIR_GLOBAL(db).force_casting) { if (Z_TYPE_P(value) != IS_ARRAY) { do { if (ZEPHIR_IS_LONG(type, 1)) { ZEPHIR_SINIT_NVAR(_4$$12); ZVAL_LONG(&_4$$12, 10); ZEPHIR_CALL_FUNCTION(&castValue, "intval", &_5, 26, value, &_4$$12); zephir_check_call_status(); break; } if (ZEPHIR_IS_LONG(type, 2)) { zephir_get_strval(_6$$13, value); ZEPHIR_CPY_WRT(castValue, _6$$13); break; } if (ZEPHIR_IS_LONG(type, 0)) { ZEPHIR_INIT_NVAR(castValue); ZVAL_NULL(castValue); break; } if (ZEPHIR_IS_LONG(type, 5)) { ZEPHIR_INIT_NVAR(castValue); ZVAL_BOOL(castValue, zephir_get_boolval(value)); break; } ZEPHIR_CPY_WRT(castValue, value); break; } while(0); } else { ZEPHIR_CPY_WRT(castValue, value); } } else { ZEPHIR_CPY_WRT(castValue, value); } } if (Z_TYPE_P(castValue) != IS_ARRAY) { if (ZEPHIR_IS_LONG(type, 1024)) { ZEPHIR_CALL_METHOD(NULL, statement, "bindvalue", &_7, 0, parameter, castValue); zephir_check_call_status(); } else { ZEPHIR_CALL_METHOD(NULL, statement, "bindvalue", &_7, 0, parameter, castValue, type); zephir_check_call_status(); } } else { zephir_is_iterable(castValue, &_9$$22, &_8$$22, 0, 0, "phalcon/db/adapter/pdo.zep", 261); for ( ; zephir_hash_get_current_data_ex(_9$$22, (void**) &_10$$22, &_8$$22) == SUCCESS ; zephir_hash_move_forward_ex(_9$$22, &_8$$22) ) { ZEPHIR_GET_HMKEY(position, _9$$22, _8$$22); ZEPHIR_GET_HVALUE(itemValue, _10$$22); if (ZEPHIR_IS_LONG(type, 1024)) { ZEPHIR_INIT_LNVAR(_11$$24); ZEPHIR_CONCAT_VV(_11$$24, parameter, position); ZEPHIR_CALL_METHOD(NULL, statement, "bindvalue", &_7, 0, _11$$24, itemValue); zephir_check_call_status(); } else { ZEPHIR_INIT_LNVAR(_12$$25); ZEPHIR_CONCAT_VV(_12$$25, parameter, position); ZEPHIR_CALL_METHOD(NULL, statement, "bindvalue", &_7, 0, _12$$25, itemValue, type); zephir_check_call_status(); } } } } else { if (Z_TYPE_P(value) != IS_ARRAY) { ZEPHIR_CALL_METHOD(NULL, statement, "bindvalue", &_7, 0, parameter, value); zephir_check_call_status(); } else { zephir_is_iterable(value, &_14$$28, &_13$$28, 0, 0, "phalcon/db/adapter/pdo.zep", 269); for ( ; zephir_hash_get_current_data_ex(_14$$28, (void**) &_15$$28, &_13$$28) == SUCCESS ; zephir_hash_move_forward_ex(_14$$28, &_13$$28) ) { ZEPHIR_GET_HMKEY(position, _14$$28, _13$$28); ZEPHIR_GET_HVALUE(itemValue, _15$$28); ZEPHIR_INIT_LNVAR(_16$$29); ZEPHIR_CONCAT_VV(_16$$29, parameter, position); ZEPHIR_CALL_METHOD(NULL, statement, "bindvalue", &_7, 0, _16$$29, itemValue); zephir_check_call_status(); } } } } ZEPHIR_CALL_METHOD(NULL, statement, "execute", NULL, 0); zephir_check_call_status(); RETVAL_ZVAL(statement, 1, 0); RETURN_MM(); }
PHP_METHOD(Test_SpectralNorm, Ax) { zval *i, *j, *_0, _1; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 2, 0, &i, &j); ZEPHIR_INIT_VAR(_0); zephir_add_function_ex(_0, i, j TSRMLS_CC); ZEPHIR_SINIT_VAR(_1); zephir_add_function_ex(&_1, i, j TSRMLS_CC); RETURN_MM_DOUBLE(zephir_safe_div_long_double((double) 1, ((zephir_safe_div_long_long((zephir_get_numberval(_0) * (zephir_get_numberval(&_1) + 1)), 2 TSRMLS_CC) + zephir_get_numberval(i)) + (double) (1)) TSRMLS_CC)); }
PHP_METHOD(Test_SpectralNorm, Au) { zend_function *_9 = NULL, *_10 = NULL, *_12 = NULL; zend_bool _0, _3; zval *n_param = NULL, *u, *v, *_6 = NULL, *_7 = NULL, *_8 = NULL, *_11 = NULL; int n, t, i, j, _1, _2, _4, _5; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 3, 0, &n_param, &u, &v); n = zephir_get_intval(n_param); _2 = (n - 1); _1 = 0; _0 = 0; if ((_1 <= _2)) { while (1) { if (_0) { _1++; if (!((_1 <= _2))) { break; } } else { _0 = 1; } i = _1; t = 0; _5 = (n - 1); _4 = 0; _3 = 0; if ((_4 <= _5)) { while (1) { if (_3) { _4++; if (!((_4 <= _5))) { break; } } else { _3 = 1; } j = _4; ZEPHIR_INIT_NVAR(_6); ZEPHIR_INIT_NVAR(_7); ZVAL_LONG(_7, i); ZEPHIR_INIT_NVAR(_8); ZVAL_LONG(_8, j); zephir_call_method_p2_cache(_6, this_ptr, "ax", &_9, _7, _8); ZEPHIR_INIT_NVAR(_7); ZEPHIR_INIT_NVAR(_8); ZVAL_LONG(_8, j); zephir_call_method_p1_cache(_7, u, "offsetge", &_10, _8); ZEPHIR_INIT_LNVAR(_11); mul_function(_11, _6, _7 TSRMLS_CC); t += zephir_get_numberval(_11); } } ZEPHIR_INIT_NVAR(_6); ZVAL_LONG(_6, i); ZEPHIR_INIT_NVAR(_7); ZVAL_LONG(_7, t); zephir_call_method_p2_cache_noret(v, "offsetset", &_12, _6, _7); } } ZEPHIR_MM_RESTORE(); }
PHP_METHOD(Test_SpectralNorm, Au) { zephir_fcall_cache_entry *_9 = NULL, *_11 = NULL, *_13 = NULL; zend_bool _0, _3; zval *n_param = NULL, *u, *v, *_6 = NULL, *_7 = NULL, *_8 = NULL, *_10 = NULL, *_12 = NULL; int n, t, i, j, _1, _2, _4, _5, ZEPHIR_LAST_CALL_STATUS; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 3, 0, &n_param, &u, &v); n = zephir_get_intval(n_param); _2 = (n - 1); _1 = 0; _0 = 0; if (_1 <= _2) { while (1) { if (_0) { _1++; if (!(_1 <= _2)) { break; } } else { _0 = 1; } i = _1; t = 0; _5 = (n - 1); _4 = 0; _3 = 0; if (_4 <= _5) { while (1) { if (_3) { _4++; if (!(_4 <= _5)) { break; } } else { _3 = 1; } j = _4; ZEPHIR_INIT_NVAR(_7); ZVAL_LONG(_7, i); ZEPHIR_INIT_NVAR(_8); ZVAL_LONG(_8, j); ZEPHIR_CALL_METHOD(&_6, this_ptr, "ax", &_9, 70, _7, _8); zephir_check_call_status(); ZEPHIR_INIT_NVAR(_7); ZVAL_LONG(_7, j); ZEPHIR_CALL_METHOD(&_10, u, "offsetget", &_11, 0, _7); zephir_check_call_status(); ZEPHIR_INIT_LNVAR(_12); mul_function(_12, _6, _10 TSRMLS_CC); t += zephir_get_numberval(_12); } } ZEPHIR_INIT_NVAR(_7); ZVAL_LONG(_7, i); ZEPHIR_INIT_NVAR(_8); ZVAL_LONG(_8, t); ZEPHIR_CALL_METHOD(NULL, v, "offsetset", &_13, 0, _7, _8); zephir_check_call_status(); } } ZEPHIR_MM_RESTORE(); }
/** * Decrypts an encrypted text * *<code> * echo $crypt->decrypt($encrypted, "decrypt password"); *</code> */ PHP_METHOD(Phalcon_Crypt, decrypt) { zend_bool _12; zephir_fcall_cache_entry *_4 = NULL; zend_long ZEPHIR_LAST_CALL_STATUS; zval *text_param = NULL, *key = NULL, *decryptKey = NULL, *ivSize = NULL, *cipher = NULL, *mode = NULL, *blockSize = NULL, *paddingType = NULL, *decrypted = NULL, _0 = zval_used_for_init, *_1 = NULL, *_2, *_3 = NULL, *_8, _9, *_10, _11, *_5$$9, *_6$$9, *_7$$9 = NULL; zval *text = NULL; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 1, 1, &text_param, &key); if (UNEXPECTED(Z_TYPE_P(text_param) != IS_STRING && Z_TYPE_P(text_param) != IS_NULL)) { zephir_throw_exception_string(spl_ce_InvalidArgumentException, SL("Parameter 'text' must be a string") TSRMLS_CC); RETURN_MM_NULL(); } if (EXPECTED(Z_TYPE_P(text_param) == IS_STRING)) { zephir_get_strval(text, text_param); } else { ZEPHIR_INIT_VAR(text); ZVAL_EMPTY_STRING(text); } if (!key) { key = ZEPHIR_GLOBAL(global_null); } if (!((zephir_function_exists_ex(SS("openssl_cipher_iv_length") TSRMLS_CC) == SUCCESS))) { ZEPHIR_THROW_EXCEPTION_DEBUG_STR(phalcon_crypt_exception_ce, "openssl extension is required", "phalcon/crypt.zep", 331); return; } if (Z_TYPE_P(key) == IS_NULL) { ZEPHIR_OBS_VAR(decryptKey); zephir_read_property_this(&decryptKey, this_ptr, SL("_key"), PH_NOISY_CC); } else { ZEPHIR_CPY_WRT(decryptKey, key); } if (ZEPHIR_IS_EMPTY(decryptKey)) { ZEPHIR_THROW_EXCEPTION_DEBUG_STR(phalcon_crypt_exception_ce, "Decryption key cannot be empty", "phalcon/crypt.zep", 341); return; } ZEPHIR_OBS_VAR(cipher); zephir_read_property_this(&cipher, this_ptr, SL("_cipher"), PH_NOISY_CC); ZEPHIR_SINIT_VAR(_0); ZVAL_STRING(&_0, "-", 0); ZEPHIR_CALL_FUNCTION(&_1, "strrpos", NULL, 152, cipher, &_0); zephir_check_call_status(); ZEPHIR_SINIT_NVAR(_0); ZVAL_LONG(&_0, (zephir_get_numberval(_1) - zephir_fast_strlen_ev(cipher))); ZEPHIR_INIT_VAR(_2); zephir_substr(_2, cipher, zephir_get_intval(&_0), 0, ZEPHIR_SUBSTR_NO_LENGTH); ZEPHIR_INIT_VAR(mode); zephir_fast_strtolower(mode, _2); ZEPHIR_CALL_FUNCTION(&_3, "openssl_get_cipher_methods", NULL, 153, ZEPHIR_GLOBAL(global_true)); zephir_check_call_status(); if (!(zephir_fast_in_array(cipher, _3 TSRMLS_CC))) { ZEPHIR_THROW_EXCEPTION_DEBUG_STR(phalcon_crypt_exception_ce, "Cipher algorithm is unknown", "phalcon/crypt.zep", 348); return; } ZEPHIR_CALL_FUNCTION(&ivSize, "openssl_cipher_iv_length", &_4, 154, cipher); zephir_check_call_status(); if (ZEPHIR_GT_LONG(ivSize, 0)) { ZEPHIR_CPY_WRT(blockSize, ivSize); } else { ZEPHIR_INIT_VAR(_5$$9); ZEPHIR_CONCAT_SV(_5$$9, "-", mode); ZEPHIR_INIT_VAR(_6$$9); ZVAL_STRING(_6$$9, "", ZEPHIR_TEMP_PARAM_COPY); ZEPHIR_CALL_FUNCTION(&_7$$9, "str_ireplace", NULL, 155, _5$$9, _6$$9, cipher); zephir_check_temp_parameter(_6$$9); zephir_check_call_status(); ZEPHIR_CALL_FUNCTION(&blockSize, "openssl_cipher_iv_length", &_4, 154, _7$$9); zephir_check_call_status(); } ZEPHIR_INIT_VAR(_8); zephir_substr(_8, text, zephir_get_intval(ivSize), 0, ZEPHIR_SUBSTR_NO_LENGTH); ZEPHIR_SINIT_VAR(_9); ZVAL_LONG(&_9, 0); ZEPHIR_INIT_VAR(_10); zephir_substr(_10, text, 0 , zephir_get_intval(ivSize), 0); ZEPHIR_SINIT_VAR(_11); ZVAL_LONG(&_11, 1); ZEPHIR_CALL_FUNCTION(&decrypted, "openssl_decrypt", NULL, 158, _8, cipher, decryptKey, &_11, _10); zephir_check_call_status(); ZEPHIR_OBS_VAR(paddingType); zephir_read_property_this(&paddingType, this_ptr, SL("_padding"), PH_NOISY_CC); _12 = ZEPHIR_IS_STRING(mode, "cbc"); if (!(_12)) { _12 = ZEPHIR_IS_STRING(mode, "ecb"); } if (_12) { ZEPHIR_RETURN_CALL_METHOD(this_ptr, "_cryptunpadtext", NULL, 0, decrypted, mode, blockSize, paddingType); zephir_check_call_status(); RETURN_MM(); } RETURN_CCTOR(decrypted); }
PHP_METHOD(PhalconPlus_Logger_Processor_Trace, __toString) { HashTable *_4$$3; HashPosition _3$$3; zval *trace = NULL, *part = NULL, *_1, *trace1 = NULL, *trace2 = NULL, *_9 = NULL, *_10, *_11, *_12, *_13, *_14, *_15, *_16, *_17, *_18, *_2$$3, **_5$$3, *_6$$4, *_7$$4, *_8$$4 = NULL, *_20$$7, *_21$$7; zephir_fcall_cache_entry *_0 = NULL; int ZEPHIR_LAST_CALL_STATUS, i, j = 0, _19; ZEPHIR_MM_GROW(); ZEPHIR_CALL_FUNCTION(&trace, "debug_backtrace", NULL, 52); zephir_check_call_status(); ZEPHIR_MAKE_REF(trace); ZEPHIR_CALL_FUNCTION(NULL, "array_shift", &_0, 53, trace); ZEPHIR_UNREF(trace); zephir_check_call_status(); ZEPHIR_MAKE_REF(trace); ZEPHIR_CALL_FUNCTION(NULL, "array_shift", &_0, 53, trace); ZEPHIR_UNREF(trace); zephir_check_call_status(); i = 0; CHECK: while (1) { zephir_array_fetch_long(&_1, trace, i, PH_READONLY, "phalconplus/Logger/Processor/Trace.zep", 33 TSRMLS_CC); if (!(zephir_array_isset_string(_1, SS("class")))) { break; } _2$$3 = zephir_fetch_nproperty_this(this_ptr, SL("skipClassesPartials"), PH_NOISY_CC); zephir_is_iterable(_2$$3, &_4$$3, &_3$$3, 0, 0, "phalconplus/Logger/Processor/Trace.zep", 41); for ( ; zephir_hash_get_current_data_ex(_4$$3, (void**) &_5$$3, &_3$$3) == SUCCESS ; zephir_hash_move_forward_ex(_4$$3, &_3$$3) ) { ZEPHIR_GET_HVALUE(part, _5$$3); zephir_array_fetch_long(&_6$$4, trace, i, PH_NOISY | PH_READONLY, "phalconplus/Logger/Processor/Trace.zep", 36 TSRMLS_CC); zephir_array_fetch_string(&_7$$4, _6$$4, SL("class"), PH_NOISY | PH_READONLY, "phalconplus/Logger/Processor/Trace.zep", 36 TSRMLS_CC); ZEPHIR_INIT_NVAR(_8$$4); zephir_fast_strpos(_8$$4, _7$$4, part, 0 ); if (!ZEPHIR_IS_FALSE_IDENTICAL(_8$$4)) { i = (i + 1); goto CHECK; } } break; } ZEPHIR_INIT_VAR(trace1); array_init(trace1); ZEPHIR_INIT_VAR(trace2); array_init(trace2); j = (i - 1); ZEPHIR_INIT_NVAR(trace1); zephir_create_array(trace1, 2, 0 TSRMLS_CC); ZEPHIR_INIT_VAR(_9); zephir_array_fetch_long(&_10, trace, j, PH_READONLY, "phalconplus/Logger/Processor/Trace.zep", 48 TSRMLS_CC); if (zephir_array_isset_string(_10, SS("file"))) { zephir_array_fetch_long(&_11, trace, j, PH_NOISY | PH_READONLY, "phalconplus/Logger/Processor/Trace.zep", 48 TSRMLS_CC); ZEPHIR_OBS_NVAR(_9); zephir_array_fetch_string(&_9, _11, SL("file"), PH_NOISY, "phalconplus/Logger/Processor/Trace.zep", 48 TSRMLS_CC); } else { ZEPHIR_INIT_NVAR(_9); ZVAL_STRING(_9, "Nil", 1); } zephir_array_update_string(&trace1, SL("file"), &_9, PH_COPY | PH_SEPARATE); ZEPHIR_INIT_LNVAR(_9); zephir_array_fetch_long(&_12, trace, j, PH_READONLY, "phalconplus/Logger/Processor/Trace.zep", 49 TSRMLS_CC); if (zephir_array_isset_string(_12, SS("line"))) { zephir_array_fetch_long(&_13, trace, j, PH_NOISY | PH_READONLY, "phalconplus/Logger/Processor/Trace.zep", 49 TSRMLS_CC); ZEPHIR_OBS_NVAR(_9); zephir_array_fetch_string(&_9, _13, SL("line"), PH_NOISY, "phalconplus/Logger/Processor/Trace.zep", 49 TSRMLS_CC); } else { ZEPHIR_INIT_NVAR(_9); ZVAL_LONG(_9, -1); } zephir_array_update_string(&trace1, SL("line"), &_9, PH_COPY | PH_SEPARATE); ZEPHIR_INIT_NVAR(trace2); zephir_create_array(trace2, 2, 0 TSRMLS_CC); ZEPHIR_INIT_LNVAR(_9); zephir_array_fetch_long(&_14, trace, i, PH_READONLY, "phalconplus/Logger/Processor/Trace.zep", 53 TSRMLS_CC); if (zephir_array_isset_string(_14, SS("class"))) { zephir_array_fetch_long(&_15, trace, i, PH_NOISY | PH_READONLY, "phalconplus/Logger/Processor/Trace.zep", 53 TSRMLS_CC); ZEPHIR_OBS_NVAR(_9); zephir_array_fetch_string(&_9, _15, SL("class"), PH_NOISY, "phalconplus/Logger/Processor/Trace.zep", 53 TSRMLS_CC); } else { ZEPHIR_INIT_NVAR(_9); ZVAL_STRING(_9, "Nil", 1); } zephir_array_update_string(&trace2, SL("class"), &_9, PH_COPY | PH_SEPARATE); ZEPHIR_INIT_LNVAR(_9); zephir_array_fetch_long(&_16, trace, i, PH_READONLY, "phalconplus/Logger/Processor/Trace.zep", 54 TSRMLS_CC); if (zephir_array_isset_string(_16, SS("function"))) { zephir_array_fetch_long(&_17, trace, i, PH_NOISY | PH_READONLY, "phalconplus/Logger/Processor/Trace.zep", 54 TSRMLS_CC); ZEPHIR_OBS_NVAR(_9); zephir_array_fetch_string(&_9, _17, SL("function"), PH_NOISY, "phalconplus/Logger/Processor/Trace.zep", 54 TSRMLS_CC); } else { ZEPHIR_INIT_NVAR(_9); ZVAL_STRING(_9, "Nil", 1); } zephir_array_update_string(&trace2, SL("function"), &_9, PH_COPY | PH_SEPARATE); _18 = zephir_fetch_nproperty_this(this_ptr, SL("mode"), PH_NOISY_CC); do { _19 = ((int) (zephir_get_numberval(_18)) & 0x0011); if (_19 == 0x0010) { zephir_fast_join_str(return_value, SL(":"), trace2 TSRMLS_CC); RETURN_MM(); } if (_19 == 0x11) { ZEPHIR_INIT_VAR(_20$$7); zephir_fast_join_str(_20$$7, SL(":"), trace1 TSRMLS_CC); ZEPHIR_INIT_VAR(_21$$7); zephir_fast_join_str(_21$$7, SL(":"), trace2 TSRMLS_CC); ZEPHIR_CONCAT_VSV(return_value, _20$$7, "][", _21$$7); RETURN_MM(); } zephir_fast_join_str(return_value, SL(":"), trace1 TSRMLS_CC); RETURN_MM(); } while(0); ZEPHIR_MM_RESTORE(); }
PHP_METHOD(Xs_FieldMeta, fromConfig) { zend_bool _8, _11, _12, _13; int ZEPHIR_LAST_CALL_STATUS; zephir_fcall_cache_entry *_3 = NULL, *_5 = NULL; zval *predef = NULL; zval *config_param = NULL, *c = NULL, *_0 = NULL, *_1 = NULL, *_2 = NULL, *_4 = NULL, *_6, *_7, *_9, *_10; zval *config = NULL; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 1, 0, &config_param); zephir_get_arrval(config, config_param); ZEPHIR_OBS_VAR(c); if (zephir_array_isset_string_fetch(&c, config, SS("type"), 0 TSRMLS_CC)) { ZEPHIR_INIT_VAR(_0); zephir_fast_strtoupper(_0, c); ZEPHIR_INIT_VAR(_1); ZEPHIR_CONCAT_SSV(_1, "Xs\\FieldMeta", "::TYPE_", _0); zephir_get_strval(predef, _1); ZEPHIR_CALL_FUNCTION(&_2, "defined", &_3, 11, predef); zephir_check_call_status(); if (zephir_is_true(_2)) { ZEPHIR_CALL_FUNCTION(&_4, "constant", &_5, 12, predef); zephir_check_call_status(); zephir_update_property_this(this_ptr, SL("type"), _4 TSRMLS_CC); _6 = zephir_fetch_nproperty_this(this_ptr, SL("type"), PH_NOISY_CC); do { if (ZEPHIR_IS_LONG(_6, 10)) { ZEPHIR_INIT_ZVAL_NREF(_7); ZVAL_LONG(_7, 0x01); zephir_update_property_this(this_ptr, SL("flag"), _7 TSRMLS_CC); ZEPHIR_INIT_ZVAL_NREF(_7); ZVAL_STRING(_7, "full", 1); zephir_update_property_this(this_ptr, SL("tokenizer"), _7 TSRMLS_CC); break; } if (ZEPHIR_IS_LONG(_6, 11)) { ZEPHIR_INIT_ZVAL_NREF(_7); ZVAL_LONG(_7, (0x03 | 0x10)); zephir_update_property_this(this_ptr, SL("flag"), _7 TSRMLS_CC); ZEPHIR_INIT_ZVAL_NREF(_7); ZVAL_LONG(_7, 5); zephir_update_property_this(this_ptr, SL("weight"), _7 TSRMLS_CC); break; } if (ZEPHIR_IS_LONG(_6, 12)) { ZEPHIR_INIT_ZVAL_NREF(_7); ZVAL_LONG(_7, 255); zephir_update_property_this(this_ptr, SL("vno"), _7 TSRMLS_CC); ZEPHIR_INIT_ZVAL_NREF(_7); ZVAL_LONG(_7, (0x01 | 0x10)); zephir_update_property_this(this_ptr, SL("flag"), _7 TSRMLS_CC); ZEPHIR_INIT_ZVAL_NREF(_7); ZVAL_LONG(_7, 300); zephir_update_property_this(this_ptr, SL("cutlen"), _7 TSRMLS_CC); break; } } while(0); } } ZEPHIR_OBS_NVAR(c); _8 = zephir_array_isset_string_fetch(&c, config, SS("index"), 0 TSRMLS_CC); if (_8) { _6 = zephir_fetch_nproperty_this(this_ptr, SL("type"), PH_NOISY_CC); _8 = !ZEPHIR_IS_LONG(_6, 12); } if (_8) { ZEPHIR_INIT_NVAR(_0); zephir_fast_strtoupper(_0, c); ZEPHIR_INIT_LNVAR(_1); ZEPHIR_CONCAT_SSV(_1, "Xs\\FieldMeta", "::FLAG_INDEX_", _0); zephir_get_strval(predef, _1); ZEPHIR_CALL_FUNCTION(&_2, "defined", &_3, 11, predef); zephir_check_call_status(); if (zephir_is_true(_2)) { _7 = zephir_fetch_nproperty_this(this_ptr, SL("flag"), PH_NOISY_CC); ZEPHIR_CALL_FUNCTION(&_4, "constant", &_5, 12, predef); zephir_check_call_status(); ZEPHIR_INIT_ZVAL_NREF(_9); ZVAL_LONG(_9, ((((int) (zephir_get_numberval(_7)) & ~(0x03))) | zephir_get_intval(_4))); zephir_update_property_this(this_ptr, SL("flag"), _9 TSRMLS_CC); } _6 = zephir_fetch_nproperty_this(this_ptr, SL("type"), PH_NOISY_CC); if (ZEPHIR_IS_LONG(_6, 10)) { _9 = zephir_fetch_nproperty_this(this_ptr, SL("flag"), PH_NOISY_CC); ZEPHIR_INIT_ZVAL_NREF(_10); ZVAL_LONG(_10, ((int) (zephir_get_numberval(_9)) | 0x01)); zephir_update_property_this(this_ptr, SL("flag"), _10 TSRMLS_CC); } } ZEPHIR_OBS_NVAR(c); if (zephir_array_isset_string_fetch(&c, config, SS("cutlen"), 0 TSRMLS_CC)) { ZEPHIR_INIT_ZVAL_NREF(_6); ZVAL_LONG(_6, zephir_get_intval(c)); zephir_update_property_this(this_ptr, SL("cutlen"), _6 TSRMLS_CC); } ZEPHIR_OBS_NVAR(c); _11 = zephir_array_isset_string_fetch(&c, config, SS("weight"), 0 TSRMLS_CC); if (_11) { _6 = zephir_fetch_nproperty_this(this_ptr, SL("type"), PH_NOISY_CC); _11 = !ZEPHIR_IS_LONG(_6, 12); } if (_11) { ZEPHIR_INIT_ZVAL_NREF(_9); ZVAL_LONG(_9, (zephir_get_intval(c) & 0x3f)); zephir_update_property_this(this_ptr, SL("weight"), _9 TSRMLS_CC); } ZEPHIR_OBS_NVAR(c); if (zephir_array_isset_string_fetch(&c, config, SS("phrase"), 0 TSRMLS_CC)) { ZEPHIR_INIT_NVAR(_0); zephir_fast_strtolower(_0, c); do { if (ZEPHIR_IS_STRING(_0, "yes")) { _9 = zephir_fetch_nproperty_this(this_ptr, SL("flag"), PH_NOISY_CC); ZEPHIR_INIT_ZVAL_NREF(_10); ZVAL_LONG(_10, ((int) (zephir_get_numberval(_9)) | 0x10)); zephir_update_property_this(this_ptr, SL("flag"), _10 TSRMLS_CC); break; } if (ZEPHIR_IS_STRING(_0, "no")) { _6 = zephir_fetch_nproperty_this(this_ptr, SL("flag"), PH_NOISY_CC); ZEPHIR_INIT_ZVAL_NREF(_9); ZVAL_LONG(_9, ((int) (zephir_get_numberval(_6)) & ~(0x10))); zephir_update_property_this(this_ptr, SL("flag"), _9 TSRMLS_CC); break; } } while(0); } ZEPHIR_OBS_NVAR(c); if (zephir_array_isset_string_fetch(&c, config, SS("non_bool"), 0 TSRMLS_CC)) { ZEPHIR_INIT_NVAR(_0); zephir_fast_strtolower(_0, c); do { if (ZEPHIR_IS_STRING(_0, "yes")) { _6 = zephir_fetch_nproperty_this(this_ptr, SL("flag"), PH_NOISY_CC); ZEPHIR_INIT_ZVAL_NREF(_9); ZVAL_LONG(_9, ((int) (zephir_get_numberval(_6)) | 0x80)); zephir_update_property_this(this_ptr, SL("flag"), _9 TSRMLS_CC); break; } if (ZEPHIR_IS_STRING(_0, "no")) { _6 = zephir_fetch_nproperty_this(this_ptr, SL("flag"), PH_NOISY_CC); ZEPHIR_INIT_ZVAL_NREF(_9); ZVAL_LONG(_9, ((int) (zephir_get_numberval(_6)) & ~(0x80))); zephir_update_property_this(this_ptr, SL("flag"), _9 TSRMLS_CC); break; } } while(0); } ZEPHIR_OBS_NVAR(c); _12 = zephir_array_isset_string_fetch(&c, config, SS("tokenizer"), 0 TSRMLS_CC); if (_12) { _6 = zephir_fetch_nproperty_this(this_ptr, SL("type"), PH_NOISY_CC); _12 = !ZEPHIR_IS_LONG(_6, 10); } _13 = _12; if (_13) { _13 = !ZEPHIR_IS_STRING(c, "default"); } if (_13) { zephir_update_property_this(this_ptr, SL("tokenizer"), c TSRMLS_CC); } ZEPHIR_MM_RESTORE(); }
/** * Set an specific argument * * @param var arguments * @param boolean str * @param boolean shift */ PHP_METHOD(Phalcon_Cli_Console, setArgument) { HashTable *_3; HashPosition _2; int ZEPHIR_LAST_CALL_STATUS; zephir_nts_static zephir_fcall_cache_entry *_1 = NULL, *_8 = NULL, *_16 = NULL; zend_bool str, shift, _0; zval *arguments = NULL, *str_param = NULL, *shift_param = NULL, *arg = NULL, *pos = NULL, *args, *opts, *handleArgs = NULL, **_4, _5 = zval_used_for_init, _6 = zval_used_for_init, *_7 = NULL, *_9 = NULL, *_10 = NULL, *_11 = NULL, _12 = zval_used_for_init, _13 = zval_used_for_init, *_14 = NULL, *_15 = NULL; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 0, 3, &arguments, &str_param, &shift_param); if (!arguments) { arguments = ZEPHIR_GLOBAL(global_null); } if (!str_param) { str = 1; } else { if (unlikely(Z_TYPE_P(str_param) != IS_BOOL)) { zephir_throw_exception_string(spl_ce_InvalidArgumentException, SL("Parameter 'str' must be a bool") TSRMLS_CC); RETURN_MM_NULL(); } str = Z_BVAL_P(str_param); } if (!shift_param) { shift = 1; } else { if (unlikely(Z_TYPE_P(shift_param) != IS_BOOL)) { zephir_throw_exception_string(spl_ce_InvalidArgumentException, SL("Parameter 'shift' must be a bool") TSRMLS_CC); RETURN_MM_NULL(); } shift = Z_BVAL_P(shift_param); } ZEPHIR_INIT_VAR(args); array_init(args); ZEPHIR_INIT_VAR(opts); array_init(opts); ZEPHIR_INIT_VAR(handleArgs); array_init(handleArgs); if (Z_TYPE_P(arguments) != IS_ARRAY) { ZEPHIR_THROW_EXCEPTION_DEBUG_STR(phalcon_cli_console_exception_ce, "Arguments must be an array", "phalcon/cli/console.zep", 266); return; } _0 = shift; if (_0) { _0 = (zephir_fast_count_int(arguments TSRMLS_CC)) ? 1 : 0; } if (_0) { Z_SET_ISREF_P(arguments); ZEPHIR_CALL_FUNCTION(NULL, "array_shift", &_1, arguments); Z_UNSET_ISREF_P(arguments); zephir_check_call_status(); } zephir_is_iterable(arguments, &_3, &_2, 0, 0, "phalcon/cli/console.zep", 294); for ( ; zephir_hash_get_current_data_ex(_3, (void**) &_4, &_2) == SUCCESS ; zephir_hash_move_forward_ex(_3, &_2) ) { ZEPHIR_GET_HVALUE(arg, _4); if (Z_TYPE_P(arg) == IS_STRING) { ZEPHIR_SINIT_NVAR(_5); ZVAL_STRING(&_5, "--", 0); ZEPHIR_SINIT_NVAR(_6); ZVAL_LONG(&_6, 2); ZEPHIR_CALL_FUNCTION(&_7, "strncmp", &_8, arg, &_5, &_6); zephir_check_call_status(); if (ZEPHIR_IS_LONG(_7, 0)) { ZEPHIR_SINIT_NVAR(_5); ZVAL_STRING(&_5, "=", 0); ZEPHIR_INIT_NVAR(pos); zephir_fast_strpos(pos, arg, &_5, 0 ); if (zephir_is_true(pos)) { ZEPHIR_INIT_NVAR(_9); ZEPHIR_SINIT_NVAR(_6); ZVAL_LONG(&_6, (zephir_get_numberval(pos) + 1)); ZEPHIR_INIT_NVAR(_10); zephir_substr(_10, arg, zephir_get_intval(&_6), 0, ZEPHIR_SUBSTR_NO_LENGTH); zephir_fast_trim(_9, _10, NULL , ZEPHIR_TRIM_BOTH TSRMLS_CC); ZEPHIR_INIT_NVAR(_11); ZEPHIR_SINIT_NVAR(_12); ZVAL_LONG(&_12, 2); ZEPHIR_SINIT_NVAR(_13); ZVAL_LONG(&_13, (zephir_get_numberval(pos) - 2)); ZEPHIR_INIT_NVAR(_14); zephir_substr(_14, arg, 2 , zephir_get_intval(&_13), 0); zephir_fast_trim(_11, _14, NULL , ZEPHIR_TRIM_BOTH TSRMLS_CC); zephir_array_update_zval(&opts, _11, &_9, PH_COPY | PH_SEPARATE); } else { ZEPHIR_INIT_NVAR(_9); ZEPHIR_SINIT_NVAR(_12); ZVAL_LONG(&_12, 2); ZEPHIR_INIT_NVAR(_10); zephir_substr(_10, arg, 2 , 0, ZEPHIR_SUBSTR_NO_LENGTH); zephir_fast_trim(_9, _10, NULL , ZEPHIR_TRIM_BOTH TSRMLS_CC); zephir_array_update_zval(&opts, _9, &ZEPHIR_GLOBAL(global_true), PH_COPY | PH_SEPARATE); } } else { ZEPHIR_SINIT_NVAR(_12); ZVAL_STRING(&_12, "-", 0); ZEPHIR_SINIT_NVAR(_13); ZVAL_LONG(&_13, 1); ZEPHIR_CALL_FUNCTION(&_15, "strncmp", &_8, arg, &_12, &_13); zephir_check_call_status(); if (ZEPHIR_IS_LONG(_15, 0)) { ZEPHIR_SINIT_NVAR(_12); ZVAL_LONG(&_12, 1); ZEPHIR_INIT_NVAR(_9); zephir_substr(_9, arg, 1 , 0, ZEPHIR_SUBSTR_NO_LENGTH); zephir_array_update_zval(&opts, _9, &ZEPHIR_GLOBAL(global_true), PH_COPY | PH_SEPARATE); } else { zephir_array_append(&args, arg, PH_SEPARATE, "phalcon/cli/console.zep", 286); } } } else { zephir_array_append(&args, arg, PH_SEPARATE, "phalcon/cli/console.zep", 290); } } if (str) { ZEPHIR_INIT_NVAR(_9); ZEPHIR_CALL_CE_STATIC(&_7, phalcon_cli_router_route_ce, "getdelimiter", &_16); zephir_check_call_status(); zephir_fast_join(_9, _7, args TSRMLS_CC); zephir_update_property_this(this_ptr, SL("_arguments"), _9 TSRMLS_CC); } else { if (zephir_fast_count_int(args TSRMLS_CC)) { Z_SET_ISREF_P(args); ZEPHIR_CALL_FUNCTION(&_15, "array_shift", &_1, args); Z_UNSET_ISREF_P(args); zephir_check_call_status(); zephir_array_update_string(&handleArgs, SL("task"), &_15, PH_COPY | PH_SEPARATE); } if (zephir_fast_count_int(args TSRMLS_CC)) { Z_SET_ISREF_P(args); ZEPHIR_CALL_FUNCTION(&_7, "array_shift", &_1, args); Z_UNSET_ISREF_P(args); zephir_check_call_status(); zephir_array_update_string(&handleArgs, SL("action"), &_7, PH_COPY | PH_SEPARATE); } if (zephir_fast_count_int(args TSRMLS_CC)) { ZEPHIR_INIT_NVAR(_10); zephir_fast_array_merge(_10, &(handleArgs), &(args) TSRMLS_CC); ZEPHIR_CPY_WRT(handleArgs, _10); } zephir_update_property_this(this_ptr, SL("_arguments"), handleArgs TSRMLS_CC); } zephir_update_property_this(this_ptr, SL("_options"), opts TSRMLS_CC); RETURN_THIS(); }
/** * Writes the log to the stream itself */ PHP_METHOD(Phalcon_Logger_Adapter_Firephp, logInternal) { HashTable *_8; HashPosition _7; zephir_fcall_cache_entry *_2 = NULL; zval *context = NULL; int type, time, ZEPHIR_LAST_CALL_STATUS; zval *message_param = NULL, *type_param = NULL, *time_param = NULL, *context_param = NULL, *chunk = NULL, *format = NULL, *chString = NULL, *content = NULL, *key = NULL, *index = NULL, *_0, *_3 = NULL, *_4, *_5, _6, **_9, _1$$3 = zval_used_for_init; zval *message = NULL, *_10$$4 = NULL; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 4, 0, &message_param, &type_param, &time_param, &context_param); zephir_get_strval(message, message_param); type = zephir_get_intval(type_param); time = zephir_get_intval(time_param); zephir_get_arrval(context, context_param); _0 = zephir_fetch_nproperty_this(this_ptr, SL("_initialized"), PH_NOISY_CC); if (!(zephir_is_true(_0))) { ZEPHIR_SINIT_VAR(_1$$3); ZVAL_STRING(&_1$$3, "X-Wf-Protocol-1: http://meta.wildfirehq.org/Protocol/JsonStream/0.2", 0); ZEPHIR_CALL_FUNCTION(NULL, "header", &_2, 248, &_1$$3); zephir_check_call_status(); ZEPHIR_SINIT_NVAR(_1$$3); ZVAL_STRING(&_1$$3, "X-Wf-1-Plugin-1: http://meta.firephp.org/Wildfire/Plugin/FirePHP/Library-FirePHPCore/0.3", 0); ZEPHIR_CALL_FUNCTION(NULL, "header", &_2, 248, &_1$$3); zephir_check_call_status(); ZEPHIR_SINIT_NVAR(_1$$3); ZVAL_STRING(&_1$$3, "X-Wf-Structure-1: http://meta.firephp.org/Wildfire/Structure/FirePHP/FirebugConsole/0.1", 0); ZEPHIR_CALL_FUNCTION(NULL, "header", &_2, 248, &_1$$3); zephir_check_call_status(); if (1) { zephir_update_property_this(this_ptr, SL("_initialized"), ZEPHIR_GLOBAL(global_true) TSRMLS_CC); } else { zephir_update_property_this(this_ptr, SL("_initialized"), ZEPHIR_GLOBAL(global_false) TSRMLS_CC); } } ZEPHIR_CALL_METHOD(&_3, this_ptr, "getformatter", NULL, 0); zephir_check_call_status(); ZEPHIR_INIT_VAR(_4); ZVAL_LONG(_4, type); ZEPHIR_INIT_VAR(_5); ZVAL_LONG(_5, time); ZEPHIR_CALL_METHOD(&format, _3, "format", NULL, 0, message, _4, _5, context); zephir_check_call_status(); ZEPHIR_SINIT_VAR(_6); ZVAL_LONG(&_6, 4500); ZEPHIR_CALL_FUNCTION(&chunk, "str_split", NULL, 74, format, &_6); zephir_check_call_status(); ZEPHIR_OBS_VAR(index); zephir_read_property_this(&index, this_ptr, SL("_index"), PH_NOISY_CC); zephir_is_iterable(chunk, &_8, &_7, 0, 0, "phalcon/logger/adapter/firephp.zep", 92); for ( ; zephir_hash_get_current_data_ex(_8, (void**) &_9, &_7) == SUCCESS ; zephir_hash_move_forward_ex(_8, &_7) ) { ZEPHIR_GET_HMKEY(key, _8, _7); ZEPHIR_GET_HVALUE(chString, _9); zephir_get_strval(_10$$4, index); ZEPHIR_INIT_NVAR(content); ZEPHIR_CONCAT_SVSV(content, "X-Wf-1-1-1-", _10$$4, ": ", chString); if (zephir_array_isset_long(chunk, (zephir_get_numberval(key) + 1))) { zephir_concat_self_str(&content, SL("|\\") TSRMLS_CC); } ZEPHIR_CALL_FUNCTION(NULL, "header", &_2, 248, content); zephir_check_call_status(); ZEPHIR_SEPARATE(index); zephir_increment(index); } zephir_update_property_this(this_ptr, SL("_index"), index TSRMLS_CC); ZEPHIR_MM_RESTORE(); }
PHP_METHOD(Xpl_ClassLoader, findFileWithExtension) { HashTable *_16, *_39, *_6$$3, *_11$$5, *_32$$12, *_35$$14; HashPosition _15, _38, _5$$3, _10$$5, _31$$12, _34$$14; int ZEPHIR_LAST_CALL_STATUS; zephir_fcall_cache_entry *_3 = NULL; zval *className_param = NULL, *ext_param = NULL, *logicalPathPsr4 = NULL, *firstChar = NULL, *prefixLengthsPsr4 = NULL, *prefix = NULL, *length = NULL, *dir = NULL, *file = NULL, *prefixesPsr0 = NULL, *logicalPathPsr0 = NULL, *nsPos = NULL, *dirs = NULL, _0 = zval_used_for_init, _1 = zval_used_for_init, *_2 = NULL, *_4, *_14, **_17, _18, *_30, *_37, **_40, *_41, **_7$$3, *_8$$5, *_9$$5, **_12$$5, *_13$$6 = NULL, _19$$10, _20$$10, *_21$$10, _22$$10, *_23$$10, _24$$10, _25$$10, *_26$$10 = NULL, _27$$11, _28$$11, *_29$$11 = NULL, **_33$$12, **_36$$14; zval *className = NULL, *ext = NULL; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 2, 0, &className_param, &ext_param); if (unlikely(Z_TYPE_P(className_param) != IS_STRING && Z_TYPE_P(className_param) != IS_NULL)) { zephir_throw_exception_string(spl_ce_InvalidArgumentException, SL("Parameter 'className' must be a string") TSRMLS_CC); RETURN_MM_NULL(); } if (likely(Z_TYPE_P(className_param) == IS_STRING)) { zephir_get_strval(className, className_param); } else { ZEPHIR_INIT_VAR(className); ZVAL_EMPTY_STRING(className); } zephir_get_strval(ext, ext_param); ZEPHIR_SINIT_VAR(_0); ZVAL_STRING(&_0, "\\", 0); ZEPHIR_SINIT_VAR(_1); ZVAL_STRING(&_1, "/", 0); ZEPHIR_CALL_FUNCTION(&_2, "strtr", &_3, 56, className, &_0, &_1); zephir_check_call_status(); ZEPHIR_INIT_VAR(logicalPathPsr4); ZEPHIR_CONCAT_VV(logicalPathPsr4, _2, ext); ZEPHIR_SINIT_NVAR(_0); ZVAL_LONG(&_0, 0); ZEPHIR_SINIT_NVAR(_1); ZVAL_LONG(&_1, 1); ZEPHIR_INIT_VAR(firstChar); zephir_substr(firstChar, className, 0 , 1 , 0); ZEPHIR_OBS_VAR(prefixLengthsPsr4); _4 = zephir_fetch_nproperty_this(this_ptr, SL("prefixLengthsPsr4"), PH_NOISY_CC); if (zephir_array_isset_fetch(&prefixLengthsPsr4, _4, firstChar, 0 TSRMLS_CC)) { zephir_is_iterable(prefixLengthsPsr4, &_6$$3, &_5$$3, 0, 0, "xpl/classloader.zep", 505); for ( ; zephir_hash_get_current_data_ex(_6$$3, (void**) &_7$$3, &_5$$3) == SUCCESS ; zephir_hash_move_forward_ex(_6$$3, &_5$$3) ) { ZEPHIR_GET_HMKEY(prefix, _6$$3, _5$$3); ZEPHIR_GET_HVALUE(length, _7$$3); if (zephir_start_with(className, prefix, ZEPHIR_GLOBAL(global_false))) { _8$$5 = zephir_fetch_nproperty_this(this_ptr, SL("prefixDirsPsr4"), PH_NOISY_CC); zephir_array_fetch(&_9$$5, _8$$5, prefix, PH_NOISY | PH_READONLY, "xpl/classloader.zep", 495 TSRMLS_CC); zephir_is_iterable(_9$$5, &_11$$5, &_10$$5, 0, 0, "xpl/classloader.zep", 503); for ( ; zephir_hash_get_current_data_ex(_11$$5, (void**) &_12$$5, &_10$$5) == SUCCESS ; zephir_hash_move_forward_ex(_11$$5, &_10$$5) ) { ZEPHIR_GET_HVALUE(dir, _12$$5); ZEPHIR_INIT_NVAR(_13$$6); zephir_substr(_13$$6, logicalPathPsr4, zephir_get_intval(length), 0, ZEPHIR_SUBSTR_NO_LENGTH); ZEPHIR_INIT_NVAR(file); ZEPHIR_CONCAT_VSV(file, dir, "/", _13$$6); if ((zephir_file_exists(file TSRMLS_CC) == SUCCESS)) { RETURN_CCTOR(file); } } } } } _14 = zephir_fetch_nproperty_this(this_ptr, SL("fallbackDirsPsr4"), PH_NOISY_CC); zephir_is_iterable(_14, &_16, &_15, 0, 0, "xpl/classloader.zep", 517); for ( ; zephir_hash_get_current_data_ex(_16, (void**) &_17, &_15) == SUCCESS ; zephir_hash_move_forward_ex(_16, &_15) ) { ZEPHIR_GET_HVALUE(dir, _17); ZEPHIR_INIT_NVAR(file); ZEPHIR_CONCAT_VSV(file, dir, "/", logicalPathPsr4); if ((zephir_file_exists(file TSRMLS_CC) == SUCCESS)) { RETURN_CCTOR(file); } } ZEPHIR_SINIT_VAR(_18); ZVAL_STRING(&_18, "\\", 0); ZEPHIR_CALL_FUNCTION(&nsPos, "strrpos", NULL, 57, className, &_18); zephir_check_call_status(); ZEPHIR_INIT_VAR(logicalPathPsr0); if (zephir_is_true(nsPos)) { ZEPHIR_SINIT_VAR(_19$$10); ZVAL_LONG(&_19$$10, 0); ZEPHIR_SINIT_VAR(_20$$10); ZVAL_LONG(&_20$$10, (zephir_get_numberval(nsPos) + 1)); ZEPHIR_INIT_VAR(_21$$10); zephir_substr(_21$$10, logicalPathPsr4, 0 , zephir_get_intval(&_20$$10), 0); ZEPHIR_SINIT_VAR(_22$$10); ZVAL_LONG(&_22$$10, (zephir_get_numberval(nsPos) + 1)); ZEPHIR_INIT_VAR(_23$$10); zephir_substr(_23$$10, logicalPathPsr4, zephir_get_intval(&_22$$10), 0, ZEPHIR_SUBSTR_NO_LENGTH); ZEPHIR_SINIT_VAR(_24$$10); ZVAL_STRING(&_24$$10, "_", 0); ZEPHIR_SINIT_VAR(_25$$10); ZVAL_STRING(&_25$$10, "/", 0); ZEPHIR_CALL_FUNCTION(&_26$$10, "strtr", &_3, 56, _23$$10, &_24$$10, &_25$$10); zephir_check_call_status(); ZEPHIR_CONCAT_VV(logicalPathPsr0, _21$$10, _26$$10); } else { ZEPHIR_SINIT_VAR(_27$$11); ZVAL_STRING(&_27$$11, "_", 0); ZEPHIR_SINIT_VAR(_28$$11); ZVAL_STRING(&_28$$11, "/", 0); ZEPHIR_CALL_FUNCTION(&_29$$11, "strtr", &_3, 56, className, &_27$$11, &_28$$11); zephir_check_call_status(); ZEPHIR_CONCAT_VV(logicalPathPsr0, _29$$11, ext); } ZEPHIR_OBS_VAR(prefixesPsr0); _30 = zephir_fetch_nproperty_this(this_ptr, SL("prefixesPsr0"), PH_NOISY_CC); if (zephir_array_isset_fetch(&prefixesPsr0, _30, firstChar, 0 TSRMLS_CC)) { zephir_is_iterable(prefixesPsr0, &_32$$12, &_31$$12, 0, 0, "xpl/classloader.zep", 546); for ( ; zephir_hash_get_current_data_ex(_32$$12, (void**) &_33$$12, &_31$$12) == SUCCESS ; zephir_hash_move_forward_ex(_32$$12, &_31$$12) ) { ZEPHIR_GET_HMKEY(prefix, _32$$12, _31$$12); ZEPHIR_GET_HVALUE(dirs, _33$$12); if (zephir_start_with(className, prefix, NULL)) { zephir_is_iterable(dirs, &_35$$14, &_34$$14, 0, 0, "xpl/classloader.zep", 544); for ( ; zephir_hash_get_current_data_ex(_35$$14, (void**) &_36$$14, &_34$$14) == SUCCESS ; zephir_hash_move_forward_ex(_35$$14, &_34$$14) ) { ZEPHIR_GET_HVALUE(dir, _36$$14); ZEPHIR_INIT_NVAR(file); ZEPHIR_CONCAT_VSV(file, dir, "/", logicalPathPsr0); if ((zephir_file_exists(file TSRMLS_CC) == SUCCESS)) { RETURN_CCTOR(file); } } } } } _37 = zephir_fetch_nproperty_this(this_ptr, SL("fallbackDirsPsr0"), PH_NOISY_CC); zephir_is_iterable(_37, &_39, &_38, 0, 0, "xpl/classloader.zep", 559); for ( ; zephir_hash_get_current_data_ex(_39, (void**) &_40, &_38) == SUCCESS ; zephir_hash_move_forward_ex(_39, &_38) ) { ZEPHIR_GET_HVALUE(dir, _40); ZEPHIR_INIT_NVAR(file); ZEPHIR_CONCAT_VSV(file, dir, "/", logicalPathPsr0); if ((zephir_file_exists(file TSRMLS_CC) == SUCCESS)) { RETURN_CCTOR(file); } } _41 = zephir_fetch_nproperty_this(this_ptr, SL("useIncludePath"), PH_NOISY_CC); if (ZEPHIR_IS_TRUE_IDENTICAL(_41)) { ZEPHIR_CALL_FUNCTION(&file, "stream_resolve_include_path", NULL, 58, logicalPathPsr0); zephir_check_call_status(); if (zephir_is_true(file)) { RETURN_CCTOR(file); } } RETURN_MM_NULL(); }
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(Pdm_Db_Adapter_AbstractPdo, bindStatmentParameters) { zephir_fcall_cache_entry *_4 = NULL, *_5 = NULL, *_7 = NULL; int ZEPHIR_LAST_CALL_STATUS; HashTable *_1; HashPosition _0; zend_bool hasBindParams, hasBindTypes, _3; zval *statement, *bindParams = NULL, *bindTypes = NULL, *wildcard = NULL, *value = NULL, *parameter = NULL, *type = NULL, *castValue = NULL, **_2, *_6 = NULL; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 1, 2, &statement, &bindParams, &bindTypes); if (!bindParams) { ZEPHIR_INIT_VAR(bindParams); array_init(bindParams); } if (!bindTypes) { ZEPHIR_INIT_VAR(bindTypes); array_init(bindTypes); } else { ZEPHIR_SEPARATE_PARAM(bindTypes); } if (!(zephir_instance_of_ev(statement, zephir_get_internal_ce(SS("pdostatement") TSRMLS_CC) TSRMLS_CC))) { ZEPHIR_THROW_EXCEPTION_DEBUG_STR(spl_ce_InvalidArgumentException, "Parameter 'statement' must be an instance of 'PDOStatement'", "", 0); return; } if (Z_TYPE_P(bindTypes) != IS_ARRAY) { ZEPHIR_INIT_NVAR(bindTypes); array_init(bindTypes); } if (zephir_fast_count_int(bindParams TSRMLS_CC) > 0) { hasBindParams = 1; } else { hasBindParams = 0; } if (zephir_fast_count_int(bindTypes TSRMLS_CC) > 0) { hasBindTypes = 1; } else { hasBindTypes = 0; } zephir_is_iterable(bindParams, &_1, &_0, 0, 0); for ( ; zephir_hash_get_current_data_ex(_1, (void**) &_2, &_0) == SUCCESS ; zephir_hash_move_forward_ex(_1, &_0) ) { ZEPHIR_GET_HMKEY(wildcard, _1, _0); ZEPHIR_GET_HVALUE(value, _2); if (Z_TYPE_P(wildcard) == IS_LONG) { ZEPHIR_INIT_NVAR(parameter); ZVAL_LONG(parameter, (zephir_get_numberval(wildcard) + 1)); } else { if (Z_TYPE_P(wildcard) == IS_STRING) { ZEPHIR_CPY_WRT(parameter, wildcard); } else { ZEPHIR_THROW_EXCEPTION_DEBUG_STR(pdm_db_adapter_exception_ce, "Invalid bind parameter (1)", "pdm/db/adapter/abstractpdo.zep", 126); return; } } _3 = hasBindParams; if (_3) { _3 = hasBindTypes; } if (_3) { ZEPHIR_OBS_NVAR(type); if (!(zephir_array_isset_fetch(&type, bindTypes, wildcard, 0 TSRMLS_CC))) { ZEPHIR_INIT_NVAR(type); ZVAL_LONG(type, 2); } if (ZEPHIR_IS_LONG(type, 32)) { ZEPHIR_INIT_NVAR(castValue); ZVAL_DOUBLE(castValue, zephir_get_doubleval(value)); ZEPHIR_INIT_NVAR(type); ZVAL_LONG(type, 1024); } else { ZEPHIR_CPY_WRT(castValue, value); } if (ZEPHIR_IS_LONG(type, 1024)) { Z_SET_ISREF_P(castValue); ZEPHIR_CALL_METHOD(NULL, statement, "bindparam", &_4, parameter, castValue); zephir_check_call_status(); Z_UNSET_ISREF_P(castValue); } else { Z_SET_ISREF_P(castValue); ZEPHIR_CALL_METHOD(NULL, statement, "bindparam", &_5, parameter, castValue, type); zephir_check_call_status(); Z_UNSET_ISREF_P(castValue); } } else { ZEPHIR_INIT_NVAR(_6); ZVAL_LONG(_6, 2); Z_SET_ISREF_P(value); ZEPHIR_CALL_METHOD(NULL, statement, "bindparam", &_7, parameter, value, _6); zephir_check_call_status(); Z_UNSET_ISREF_P(value); } } RETURN_CCTOR(statement); }
/** * Executes a prepared statement binding. This function uses integer indexes starting from zero * *<code> * $statement = $db->prepare('SELECT * FROM robots WHERE name = :name'); * $result = $connection->executePrepared($statement, array('name' => 'Voltron')); *</code> * * @param \PDOStatement statement * @param array placeholders * @param array dataTypes * @return \PDOStatement */ PHP_METHOD(Phalcon_Db_Adapter_Pdo, executePrepared) { zephir_fcall_cache_entry *_4 = NULL; int ZEPHIR_LAST_CALL_STATUS; zend_bool _3; HashTable *_1; HashPosition _0; zval *placeholders = NULL; zval *statement, *placeholders_param = NULL, *dataTypes, *wildcard = NULL, *value = NULL, *type = NULL, *castValue = NULL, *parameter = NULL, **_2; ZEPHIR_MM_GROW(); zephir_fetch_params(1, 3, 0, &statement, &placeholders_param, &dataTypes); placeholders = placeholders_param; zephir_is_iterable(placeholders, &_1, &_0, 0, 0, "phalcon/db/adapter/pdo.zep", 215); for ( ; zephir_hash_get_current_data_ex(_1, (void**) &_2, &_0) == SUCCESS ; zephir_hash_move_forward_ex(_1, &_0) ) { ZEPHIR_GET_HMKEY(wildcard, _1, _0); ZEPHIR_GET_HVALUE(value, _2); if (Z_TYPE_P(wildcard) == IS_LONG) { ZEPHIR_INIT_NVAR(parameter); ZVAL_LONG(parameter, (zephir_get_numberval(wildcard) + 1)); } else { if (Z_TYPE_P(wildcard) == IS_STRING) { ZEPHIR_CPY_WRT(parameter, wildcard); } else { ZEPHIR_THROW_EXCEPTION_DEBUG_STR(phalcon_db_exception_ce, "Invalid bind parameter (1)", "phalcon/db/adapter/pdo.zep", 188); return; } } _3 = Z_TYPE_P(dataTypes) == IS_ARRAY; if (_3) { ZEPHIR_OBS_NVAR(type); _3 = zephir_array_isset_fetch(&type, dataTypes, wildcard, 0 TSRMLS_CC); } if (_3) { if (ZEPHIR_IS_LONG(type, 32)) { ZEPHIR_INIT_NVAR(castValue); ZVAL_DOUBLE(castValue, zephir_get_doubleval(value)); ZEPHIR_INIT_NVAR(type); ZVAL_LONG(type, 1024); } else { ZEPHIR_CPY_WRT(castValue, value); } if (ZEPHIR_IS_LONG(type, 1024)) { ZEPHIR_CALL_METHOD(NULL, statement, "bindvalue", &_4, 0, parameter, castValue); zephir_check_call_status(); } else { ZEPHIR_CALL_METHOD(NULL, statement, "bindvalue", &_4, 0, parameter, castValue, type); zephir_check_call_status(); } } else { ZEPHIR_CALL_METHOD(NULL, statement, "bindvalue", &_4, 0, parameter, value); zephir_check_call_status(); } } ZEPHIR_CALL_METHOD(NULL, statement, "execute", NULL, 0); zephir_check_call_status(); RETVAL_ZVAL(statement, 1, 0); RETURN_MM(); }
PHP_METHOD(Test_FortyTwo, proof) { zend_bool _5; HashTable *_3; HashPosition _2; zval *_0; int i, j, _6, _7; zval *box, *side = NULL, *_1, **_4, *_8; ZEPHIR_MM_GROW(); ZEPHIR_INIT_VAR(box); array_init_size(box, 19); ZEPHIR_INIT_VAR(_0); array_init_size(_0, 5); ZEPHIR_INIT_VAR(_1); ZVAL_LONG(_1, 10); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 24); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 8); zephir_array_fast_append(_0, _1); zephir_array_fast_append(box, _0); ZEPHIR_INIT_BNVAR(_0); array_init_size(_0, 5); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 8); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 15); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 19); zephir_array_fast_append(_0, _1); zephir_array_fast_append(box, _0); ZEPHIR_INIT_BNVAR(_0); array_init_size(_0, 5); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 19); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 17); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 6); zephir_array_fast_append(_0, _1); zephir_array_fast_append(box, _0); ZEPHIR_INIT_BNVAR(_0); array_init_size(_0, 5); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 6); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 16); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 20); zephir_array_fast_append(_0, _1); zephir_array_fast_append(box, _0); ZEPHIR_INIT_BNVAR(_0); array_init_size(_0, 5); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 20); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 13); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 9); zephir_array_fast_append(_0, _1); zephir_array_fast_append(box, _0); ZEPHIR_INIT_BNVAR(_0); array_init_size(_0, 5); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 9); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 11); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 22); zephir_array_fast_append(_0, _1); zephir_array_fast_append(box, _0); ZEPHIR_INIT_BNVAR(_0); array_init_size(_0, 5); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 22); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 2); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 18); zephir_array_fast_append(_0, _1); zephir_array_fast_append(box, _0); ZEPHIR_INIT_BNVAR(_0); array_init_size(_0, 5); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 18); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 4); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 20); zephir_array_fast_append(_0, _1); zephir_array_fast_append(box, _0); ZEPHIR_INIT_BNVAR(_0); array_init_size(_0, 5); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 5); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 21); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 16); zephir_array_fast_append(_0, _1); zephir_array_fast_append(box, _0); ZEPHIR_INIT_BNVAR(_0); array_init_size(_0, 5); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 16); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 3); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 23); zephir_array_fast_append(_0, _1); zephir_array_fast_append(box, _0); ZEPHIR_INIT_BNVAR(_0); array_init_size(_0, 5); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 23); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 7); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 12); zephir_array_fast_append(_0, _1); zephir_array_fast_append(box, _0); ZEPHIR_INIT_BNVAR(_0); array_init_size(_0, 5); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 12); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 25); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 5); zephir_array_fast_append(_0, _1); zephir_array_fast_append(box, _0); ZEPHIR_INIT_BNVAR(_0); array_init_size(_0, 5); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 24); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 7); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 11); zephir_array_fast_append(_0, _1); zephir_array_fast_append(box, _0); ZEPHIR_INIT_BNVAR(_0); array_init_size(_0, 5); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 11); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 27); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 4); zephir_array_fast_append(_0, _1); zephir_array_fast_append(box, _0); ZEPHIR_INIT_BNVAR(_0); array_init_size(_0, 5); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 11); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 27); zephir_array_fast_append(_0, _1); ZEPHIR_INIT_BNVAR(_1); ZVAL_LONG(_1, 4); zephir_array_fast_append(_0, _1); zephir_array_fast_append(box, _0); zephir_is_iterable(box, &_3, &_2, 0, 0); for ( ; zephir_hash_get_current_data_ex(_3, (void**) &_4, &_2) == SUCCESS ; zephir_hash_move_forward_ex(_3, &_2) ) { ZEPHIR_GET_HVALUE(side, _4); j = 0; _7 = 2; _6 = 0; _5 = 0; if (_6 <= _7) { while (1) { if (_5) { _6++; if (!(_6 <= _7)) { break; } } else { _5 = 1; } i = _6; zephir_array_fetch_long(&_8, side, i, PH_NOISY | PH_READONLY TSRMLS_CC); j += zephir_get_numberval(_8); } } if (j != 42) { ZEPHIR_THROW_EXCEPTION_DEBUG_STR(test_exception_ce, "not true", "test/fortytwo.zep", 29); return; } } ZEPHIR_MM_RESTORE(); }