本文整理汇总了C++中zephir_array_fetch_string函数的典型用法代码示例。如果您正苦于以下问题:C++ zephir_array_fetch_string函数的具体用法?C++ zephir_array_fetch_string怎么用?C++ zephir_array_fetch_string使用的例子?那么, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了zephir_array_fetch_string函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: PHP_METHOD
/**
* Gets number of rows returned by a resultset
*
*<code>
* $result = $connection->query("SELECT * FROM robots ORDER BY name");
* echo 'There are ', $result->numRows(), ' rows in the resultset';
*</code>
*/
PHP_METHOD(Phalcon_Db_Result_Pdo, numRows) {
zend_bool _0;
int ZEPHIR_LAST_CALL_STATUS;
zval *sqlStatement, *rowCount = NULL, *connection, *type = NULL, *pdoStatement, *matches, *result = NULL, *row = NULL, *_1, _2, *_3, *_4, *_5, *_6;
ZEPHIR_MM_GROW();
ZEPHIR_OBS_VAR(rowCount);
zephir_read_property_this(&rowCount, this_ptr, SL("_rowCount"), PH_NOISY_CC);
if (ZEPHIR_IS_FALSE_IDENTICAL(rowCount)) {
ZEPHIR_OBS_VAR(connection);
zephir_read_property_this(&connection, this_ptr, SL("_connection"), PH_NOISY_CC);
ZEPHIR_CALL_METHOD(&type, connection, "gettype", NULL, 0);
zephir_check_call_status();
_0 = ZEPHIR_IS_STRING(type, "mysql");
if (!(_0)) {
_0 = ZEPHIR_IS_STRING(type, "pgsql");
}
if (_0) {
ZEPHIR_OBS_VAR(pdoStatement);
zephir_read_property_this(&pdoStatement, this_ptr, SL("_pdoStatement"), PH_NOISY_CC);
ZEPHIR_CALL_METHOD(&rowCount, pdoStatement, "rowcount", NULL, 0);
zephir_check_call_status();
}
if (ZEPHIR_IS_FALSE_IDENTICAL(rowCount)) {
ZEPHIR_OBS_VAR(sqlStatement);
zephir_read_property_this(&sqlStatement, this_ptr, SL("_sqlStatement"), PH_NOISY_CC);
if (!(zephir_start_with_str(sqlStatement, SL("SELECT COUNT(*) ")))) {
ZEPHIR_INIT_VAR(matches);
ZVAL_NULL(matches);
ZEPHIR_INIT_VAR(_1);
ZEPHIR_SINIT_VAR(_2);
ZVAL_STRING(&_2, "/^SELECT\\s+(.*)/i", 0);
zephir_preg_match(_1, &_2, sqlStatement, matches, 0, 0 , 0 TSRMLS_CC);
if (zephir_is_true(_1)) {
zephir_array_fetch_long(&_3, matches, 1, PH_NOISY | PH_READONLY, "phalcon/db/result/pdo.zep", 213 TSRMLS_CC);
ZEPHIR_INIT_VAR(_4);
ZEPHIR_CONCAT_SVS(_4, "SELECT COUNT(*) \"numrows\" FROM (SELECT ", _3, ")");
_5 = zephir_fetch_nproperty_this(this_ptr, SL("_bindParams"), PH_NOISY_CC);
_6 = zephir_fetch_nproperty_this(this_ptr, SL("_bindTypes"), PH_NOISY_CC);
ZEPHIR_CALL_METHOD(&result, connection, "query", NULL, 0, _4, _5, _6);
zephir_check_call_status();
ZEPHIR_CALL_METHOD(&row, result, "fetch", NULL, 0);
zephir_check_call_status();
ZEPHIR_OBS_NVAR(rowCount);
zephir_array_fetch_string(&rowCount, row, SL("numrows"), PH_NOISY, "phalcon/db/result/pdo.zep", 215 TSRMLS_CC);
}
} else {
ZEPHIR_INIT_NVAR(rowCount);
ZVAL_LONG(rowCount, 1);
}
}
zephir_update_property_this(this_ptr, SL("_rowCount"), rowCount TSRMLS_CC);
}
RETURN_CCTOR(rowCount);
}
示例2: PHP_METHOD
/**
* Unserializing a resultset will allow to only works on the rows present in the saved state
*/
PHP_METHOD(Phalcon_Mvc_Model_Resultset_Simple, unserialize) {
int ZEPHIR_LAST_CALL_STATUS;
zephir_nts_static zephir_fcall_cache_entry *_1 = NULL;
zval *data_param = NULL, *resultset = NULL, *_0, *_2, *_3, *_4, *_5, *_6;
zval *data = NULL;
ZEPHIR_MM_GROW();
zephir_fetch_params(1, 1, 0, &data_param);
if (unlikely(Z_TYPE_P(data_param) != IS_STRING && Z_TYPE_P(data_param) != IS_NULL)) {
zephir_throw_exception_string(spl_ce_InvalidArgumentException, SL("Parameter 'data' must be a string") TSRMLS_CC);
RETURN_MM_NULL();
}
if (likely(Z_TYPE_P(data_param) == IS_STRING)) {
zephir_get_strval(data, data_param);
} else {
ZEPHIR_INIT_VAR(data);
ZVAL_EMPTY_STRING(data);
}
ZEPHIR_INIT_ZVAL_NREF(_0);
ZVAL_LONG(_0, 0);
zephir_update_property_this(this_ptr, SL("_type"), _0 TSRMLS_CC);
ZEPHIR_CALL_FUNCTION(&resultset, "unserialize", &_1, data);
zephir_check_call_status();
if (Z_TYPE_P(resultset) != IS_ARRAY) {
ZEPHIR_THROW_EXCEPTION_DEBUG_STR(phalcon_mvc_model_exception_ce, "Invalid serialization data", "phalcon/mvc/model/resultset/simple.zep", 302);
return;
}
zephir_array_fetch_string(&_2, resultset, SL("model"), PH_NOISY | PH_READONLY, "phalcon/mvc/model/resultset/simple.zep", 305 TSRMLS_CC);
zephir_update_property_this(this_ptr, SL("_model"), _2 TSRMLS_CC);
zephir_array_fetch_string(&_3, resultset, SL("rows"), PH_NOISY | PH_READONLY, "phalcon/mvc/model/resultset/simple.zep", 306 TSRMLS_CC);
zephir_update_property_this(this_ptr, SL("_rows"), _3 TSRMLS_CC);
zephir_array_fetch_string(&_4, resultset, SL("cache"), PH_NOISY | PH_READONLY, "phalcon/mvc/model/resultset/simple.zep", 307 TSRMLS_CC);
zephir_update_property_this(this_ptr, SL("_cache"), _4 TSRMLS_CC);
zephir_array_fetch_string(&_5, resultset, SL("columnMap"), PH_NOISY | PH_READONLY, "phalcon/mvc/model/resultset/simple.zep", 308 TSRMLS_CC);
zephir_update_property_this(this_ptr, SL("_columnMap"), _5 TSRMLS_CC);
zephir_array_fetch_string(&_6, resultset, SL("hydrateMode"), PH_NOISY | PH_READONLY, "phalcon/mvc/model/resultset/simple.zep", 309 TSRMLS_CC);
zephir_update_property_this(this_ptr, SL("_hydrateMode"), _6 TSRMLS_CC);
ZEPHIR_MM_RESTORE();
}
示例3: PHP_METHOD
PHP_METHOD(Test_NativeArray, testArrayAccess6) {
zval *a, b, *_0, *_1;
ZEPHIR_MM_GROW();
ZEPHIR_INIT_VAR(a);
array_init_size(a, 5);
add_assoc_long_ex(a, SS("a"), 1);
add_assoc_long_ex(a, SS("b"), 2);
add_assoc_long_ex(a, SS("c"), 3);
zephir_array_fetch_string(&_0, a, SL("a"), PH_NOISY | PH_READONLY TSRMLS_CC);
zephir_array_fetch_string(&_1, a, SL("b"), PH_NOISY | PH_READONLY TSRMLS_CC);
ZEPHIR_SINIT_VAR(b);
zephir_add_function(&b, _0, _1 TSRMLS_CC);
RETURN_LCTOR(b);
}
示例4: PHP_METHOD
/**
* Unserializing a resultset will allow to only works on the rows present in the saved state
*/
PHP_METHOD(Phalcon_Mvc_Model_Resultset_Complex, unserialize) {
int ZEPHIR_LAST_CALL_STATUS;
zval *data_param = NULL, *resultset = NULL, *_0, *_1, *_2, *_3, *_4, *_5;
zval *data = NULL;
ZEPHIR_MM_GROW();
zephir_fetch_params(1, 1, 0, &data_param);
if (unlikely(Z_TYPE_P(data_param) != IS_STRING && Z_TYPE_P(data_param) != IS_NULL)) {
zephir_throw_exception_string(spl_ce_InvalidArgumentException, SL("Parameter 'data' must be a string") TSRMLS_CC);
RETURN_MM_NULL();
}
if (likely(Z_TYPE_P(data_param) == IS_STRING)) {
zephir_get_strval(data, data_param);
} else {
ZEPHIR_INIT_VAR(data);
ZVAL_EMPTY_STRING(data);
}
zephir_update_property_this(this_ptr, SL("_disableHydration"), (1) ? ZEPHIR_GLOBAL(global_true) : ZEPHIR_GLOBAL(global_false) TSRMLS_CC);
ZEPHIR_CALL_FUNCTION(&resultset, "unserialize", NULL, 10, data);
zephir_check_call_status();
if (Z_TYPE_P(resultset) != IS_ARRAY) {
ZEPHIR_THROW_EXCEPTION_DEBUG_STR(phalcon_mvc_model_exception_ce, "Invalid serialization data", "phalcon/mvc/model/resultset/complex.zep", 293);
return;
}
zephir_array_fetch_string(&_0, resultset, SL("rows"), PH_NOISY | PH_READONLY, "phalcon/mvc/model/resultset/complex.zep", 296 TSRMLS_CC);
zephir_update_property_this(this_ptr, SL("_rows"), _0 TSRMLS_CC);
zephir_array_fetch_string(&_1, resultset, SL("rows"), PH_NOISY | PH_READONLY, "phalcon/mvc/model/resultset/complex.zep", 297 TSRMLS_CC);
ZEPHIR_INIT_ZVAL_NREF(_2);
ZVAL_LONG(_2, zephir_fast_count_int(_1 TSRMLS_CC));
zephir_update_property_this(this_ptr, SL("_count"), _2 TSRMLS_CC);
zephir_array_fetch_string(&_3, resultset, SL("cache"), PH_NOISY | PH_READONLY, "phalcon/mvc/model/resultset/complex.zep", 298 TSRMLS_CC);
zephir_update_property_this(this_ptr, SL("_cache"), _3 TSRMLS_CC);
zephir_array_fetch_string(&_4, resultset, SL("columnTypes"), PH_NOISY | PH_READONLY, "phalcon/mvc/model/resultset/complex.zep", 299 TSRMLS_CC);
zephir_update_property_this(this_ptr, SL("_columnTypes"), _4 TSRMLS_CC);
zephir_array_fetch_string(&_5, resultset, SL("hydrateMode"), PH_NOISY | PH_READONLY, "phalcon/mvc/model/resultset/complex.zep", 300 TSRMLS_CC);
zephir_update_property_this(this_ptr, SL("_hydrateMode"), _5 TSRMLS_CC);
ZEPHIR_MM_RESTORE();
}
示例5: PHP_METHOD
PHP_METHOD(OAuth2_GrantType_JwtBearer, getUserId) {
zval *_0, *_1;
_0 = zephir_fetch_nproperty_this(this_ptr, SL("jwt"), PH_NOISY_CC);
zephir_array_fetch_string(&_1, _0, SL("sub"), PH_NOISY | PH_READONLY, "oauth2/granttype/jwtbearer.zep", 185 TSRMLS_CC);
RETURN_CTORW(_1);
}
示例6: PHP_METHOD
/**
* Phalcon\Annotations\Annotation constructor
*
* @param array reflectionData
*/
PHP_METHOD(Phalcon_Annotations_Annotation, __construct) {
zephir_fcall_cache_entry *_5 = NULL;
int ZEPHIR_LAST_CALL_STATUS;
HashTable *_2;
HashPosition _1;
zval *reflectionData_param = NULL, *name, *exprArguments, *argument = NULL, *resolvedArgument = NULL, *arguments, *_0, **_3, *_4;
zval *reflectionData = NULL;
ZEPHIR_MM_GROW();
zephir_fetch_params(1, 1, 0, &reflectionData_param);
reflectionData = reflectionData_param;
zephir_array_fetch_string(&_0, reflectionData, SL("name"), PH_NOISY | PH_READONLY, "phalcon/annotations/annotation.zep", 60 TSRMLS_CC);
zephir_update_property_this(this_ptr, SL("_name"), _0 TSRMLS_CC);
ZEPHIR_OBS_VAR(exprArguments);
if (zephir_array_isset_string_fetch(&exprArguments, reflectionData, SS("arguments"), 0 TSRMLS_CC)) {
ZEPHIR_INIT_VAR(arguments);
array_init(arguments);
zephir_is_iterable(exprArguments, &_2, &_1, 0, 0, "phalcon/annotations/annotation.zep", 75);
for (
; zephir_hash_get_current_data_ex(_2, (void**) &_3, &_1) == SUCCESS
; zephir_hash_move_forward_ex(_2, &_1)
) {
ZEPHIR_GET_HVALUE(argument, _3);
zephir_array_fetch_string(&_4, argument, SL("expr"), PH_NOISY | PH_READONLY, "phalcon/annotations/annotation.zep", 68 TSRMLS_CC);
ZEPHIR_CALL_METHOD(&resolvedArgument, this_ptr, "getexpression", &_5, _4);
zephir_check_call_status();
if (zephir_array_isset_string_fetch(&name, argument, SS("name"), 1 TSRMLS_CC)) {
zephir_array_update_zval(&arguments, name, &resolvedArgument, PH_COPY | PH_SEPARATE);
} else {
zephir_array_append(&arguments, resolvedArgument, PH_SEPARATE, "phalcon/annotations/annotation.zep", 72);
}
}
zephir_update_property_this(this_ptr, SL("_arguments"), arguments TSRMLS_CC);
zephir_update_property_this(this_ptr, SL("_exprArguments"), exprArguments TSRMLS_CC);
}
ZEPHIR_MM_RESTORE();
}
示例7: PHP_METHOD
/**
* @return boolean TRUE if the grant type requires a redirect_uri, FALSE if not
*/
PHP_METHOD(OAuth2_ResponseType_AuthorizationCode, enforceRedirect) {
zval *_0, *_1;
_0 = zephir_fetch_nproperty_this(this_ptr, SL("config"), PH_NOISY_CC);
zephir_array_fetch_string(&_1, _0, SL("enforce_redirect"), PH_NOISY | PH_READONLY, "oauth2/responsetype/authorizationcode.zep", 74 TSRMLS_CC);
RETURN_CTORW(_1);
}
示例8: PHP_METHOD
/**
* Validator for constructor
*/
PHP_METHOD(Phalcon_Translate_Adapter_Gettext, prepareOptions) {
int ZEPHIR_LAST_CALL_STATUS;
zval *options_param = NULL, *_0, *_1 = NULL, *_2, *_3, *_4, *_5, *_6;
zval *options = NULL;
ZEPHIR_MM_GROW();
zephir_fetch_params(1, 1, 0, &options_param);
options = options_param;
if (!(zephir_array_isset_string(options, SS("locale")))) {
ZEPHIR_THROW_EXCEPTION_DEBUG_STR(phalcon_translate_exception_ce, "Parameter \"locale\" is required", "phalcon/translate/adapter/gettext.zep", 227);
return;
}
if (!(zephir_array_isset_string(options, SS("directory")))) {
ZEPHIR_THROW_EXCEPTION_DEBUG_STR(phalcon_translate_exception_ce, "Parameter \"directory\" is required", "phalcon/translate/adapter/gettext.zep", 231);
return;
}
ZEPHIR_INIT_VAR(_0);
ZEPHIR_CALL_METHOD(&_1, this_ptr, "getoptionsdefault", NULL, 0);
zephir_check_call_status();
zephir_fast_array_merge(_0, &(_1), &(options) TSRMLS_CC);
ZEPHIR_CPY_WRT(options, _0);
zephir_array_fetch_string(&_2, options, SL("category"), PH_NOISY | PH_READONLY, "phalcon/translate/adapter/gettext.zep", 236 TSRMLS_CC);
zephir_array_fetch_string(&_3, options, SL("locale"), PH_NOISY | PH_READONLY, "phalcon/translate/adapter/gettext.zep", 236 TSRMLS_CC);
ZEPHIR_CALL_METHOD(NULL, this_ptr, "setlocale", NULL, 0, _2, _3);
zephir_check_call_status();
zephir_array_fetch_string(&_4, options, SL("defaultDomain"), PH_NOISY | PH_READONLY, "phalcon/translate/adapter/gettext.zep", 237 TSRMLS_CC);
ZEPHIR_CALL_METHOD(NULL, this_ptr, "setdefaultdomain", NULL, 0, _4);
zephir_check_call_status();
zephir_array_fetch_string(&_5, options, SL("directory"), PH_NOISY | PH_READONLY, "phalcon/translate/adapter/gettext.zep", 238 TSRMLS_CC);
ZEPHIR_CALL_METHOD(NULL, this_ptr, "setdirectory", NULL, 0, _5);
zephir_check_call_status();
zephir_array_fetch_string(&_6, options, SL("defaultDomain"), PH_NOISY | PH_READONLY, "phalcon/translate/adapter/gettext.zep", 239 TSRMLS_CC);
ZEPHIR_CALL_METHOD(NULL, this_ptr, "setdomain", NULL, 0, _6);
zephir_check_call_status();
ZEPHIR_MM_RESTORE();
}
示例9: PHP_METHOD
/**
* Reads a packet from the socket. Prior to reading from the socket will
* check for availability of the connection.
*/
PHP_METHOD(Phalcon_Queue_Beanstalk, read) {
zephir_fcall_cache_entry *_1 = NULL;
zval *length_param = NULL, *connection = NULL, *data = NULL, _4, _5, _0$$5 = zval_used_for_init, *_2$$5 = NULL, *_3$$5;
int length, ZEPHIR_LAST_CALL_STATUS;
ZEPHIR_MM_GROW();
zephir_fetch_params(1, 0, 1, &length_param);
if (!length_param) {
length = 0;
} else {
length = zephir_get_intval(length_param);
}
ZEPHIR_OBS_VAR(connection);
zephir_read_property_this(&connection, this_ptr, SL("_connection"), PH_NOISY_CC);
if (Z_TYPE_P(connection) != IS_RESOURCE) {
ZEPHIR_CALL_METHOD(&connection, this_ptr, "connect", NULL, 0);
zephir_check_call_status();
if (Z_TYPE_P(connection) != IS_RESOURCE) {
RETURN_MM_BOOL(0);
}
}
if (length) {
if (zephir_feof(connection TSRMLS_CC)) {
RETURN_MM_BOOL(0);
}
ZEPHIR_SINIT_VAR(_0$$5);
ZVAL_LONG(&_0$$5, (length + 2));
ZEPHIR_CALL_FUNCTION(&data, "stream_get_line", &_1, 386, connection, &_0$$5);
zephir_check_call_status();
ZEPHIR_CALL_FUNCTION(&_2$$5, "stream_get_meta_data", NULL, 387, connection);
zephir_check_call_status();
zephir_array_fetch_string(&_3$$5, _2$$5, SL("timed_out"), PH_NOISY | PH_READONLY, "phalcon/queue/beanstalk.zep", 373 TSRMLS_CC);
if (zephir_is_true(_3$$5)) {
ZEPHIR_THROW_EXCEPTION_DEBUG_STR(phalcon_queue_beanstalk_exception_ce, "Connection timed out", "phalcon/queue/beanstalk.zep", 374);
return;
}
ZEPHIR_SINIT_NVAR(_0$$5);
ZVAL_STRING(&_0$$5, "\r\n", 0);
zephir_fast_trim(return_value, data, &_0$$5, ZEPHIR_TRIM_RIGHT TSRMLS_CC);
RETURN_MM();
}
ZEPHIR_SINIT_VAR(_4);
ZVAL_LONG(&_4, 16384);
ZEPHIR_SINIT_VAR(_5);
ZVAL_STRING(&_5, "\r\n", 0);
ZEPHIR_RETURN_CALL_FUNCTION("stream_get_line", &_1, 386, connection, &_4, &_5);
zephir_check_call_status();
RETURN_MM();
}
示例10: PHP_METHOD
/**
* Phalcon\Cache\Backend\Redis constructor
*
* @param Phalcon\Cache\FrontendInterface frontend
* @param array options
*/
PHP_METHOD(Phalcon_Cache_Backend_Redis, __construct) {
int ZEPHIR_LAST_CALL_STATUS;
zephir_fcall_cache_entry *_3 = NULL;
zend_bool _1;
zval *frontend, *options = NULL, *_0 = NULL, *_2;
ZEPHIR_MM_GROW();
zephir_fetch_params(1, 1, 1, &frontend, &options);
if (!options) {
ZEPHIR_CPY_WRT(options, ZEPHIR_GLOBAL(global_null));
} else {
ZEPHIR_SEPARATE_PARAM(options);
}
if (Z_TYPE_P(options) != IS_ARRAY) {
ZEPHIR_INIT_NVAR(options);
array_init(options);
}
if (!(zephir_array_isset_string(options, SS("host")))) {
ZEPHIR_INIT_VAR(_0);
ZVAL_STRING(_0, "127.0.0.1", 1);
zephir_array_update_string(&options, SL("host"), &_0, PH_COPY | PH_SEPARATE);
}
if (!(zephir_array_isset_string(options, SS("port")))) {
ZEPHIR_INIT_NVAR(_0);
ZVAL_LONG(_0, 6379);
zephir_array_update_string(&options, SL("port"), &_0, PH_COPY | PH_SEPARATE);
}
if (!(zephir_array_isset_string(options, SS("index")))) {
ZEPHIR_INIT_NVAR(_0);
ZVAL_LONG(_0, 0);
zephir_array_update_string(&options, SL("index"), &_0, PH_COPY | PH_SEPARATE);
}
if (!(zephir_array_isset_string(options, SS("persistent")))) {
zephir_array_update_string(&options, SL("persistent"), &ZEPHIR_GLOBAL(global_false), PH_COPY | PH_SEPARATE);
}
_1 = !(zephir_array_isset_string(options, SS("statsKey")));
if (!(_1)) {
zephir_array_fetch_string(&_2, options, SL("statsKey"), PH_NOISY | PH_READONLY, "phalcon/cache/backend/redis.zep", 90 TSRMLS_CC);
_1 = ZEPHIR_IS_EMPTY(_2);
}
if (_1) {
ZEPHIR_INIT_NVAR(_0);
ZVAL_STRING(_0, "_PHCR", 1);
zephir_array_update_string(&options, SL("statsKey"), &_0, PH_COPY | PH_SEPARATE);
}
ZEPHIR_CALL_PARENT(NULL, phalcon_cache_backend_redis_ce, this_ptr, "__construct", &_3, 103, frontend, options);
zephir_check_call_status();
ZEPHIR_MM_RESTORE();
}
示例11: PHP_METHOD
/**
* Magic __set_state helps to recover messsages from serialization
*/
PHP_METHOD(Phalcon_Validation_Message, __set_state) {
int ZEPHIR_LAST_CALL_STATUS;
zval *message_param = NULL, *_0, *_1, *_2;
zval *message = NULL;
ZEPHIR_MM_GROW();
zephir_fetch_params(1, 1, 0, &message_param);
message = message_param;
object_init_ex(return_value, phalcon_validation_message_ce);
zephir_array_fetch_string(&_0, message, SL("_message"), PH_NOISY | PH_READONLY, "phalcon/validation/message.zep", 134 TSRMLS_CC);
zephir_array_fetch_string(&_1, message, SL("_field"), PH_NOISY | PH_READONLY, "phalcon/validation/message.zep", 134 TSRMLS_CC);
zephir_array_fetch_string(&_2, message, SL("_type"), PH_NOISY | PH_READONLY, "phalcon/validation/message.zep", 134 TSRMLS_CC);
ZEPHIR_CALL_METHOD(NULL, return_value, "__construct", NULL, 435, _0, _1, _2);
zephir_check_call_status();
RETURN_MM();
}
示例12: PHP_METHOD
/**
* Get the server variable HTTP_HOST
*
* @return string host http name
*/
PHP_METHOD(Phady_Util_Tools, getHttpHost) {
zend_bool _0;
zval *server = NULL, *_SERVER, *_1;
ZEPHIR_MM_GROW();
zephir_get_global(&_SERVER, SS("_SERVER") TSRMLS_CC);
ZEPHIR_INIT_VAR(server);
ZVAL_STRING(server, "", 1);
_0 = zephir_array_isset_string(_SERVER, SS("HTTP_HOST"));
if (_0) {
zephir_array_fetch_string(&_1, _SERVER, SL("HTTP_HOST"), PH_NOISY | PH_READONLY, "phady/util/tools.zep", 53 TSRMLS_CC);
_0 = zephir_is_true(_1);
}
if (_0) {
ZEPHIR_OBS_NVAR(server);
zephir_array_fetch_string(&server, _SERVER, SL("HTTP_HOST"), PH_NOISY, "phady/util/tools.zep", 54 TSRMLS_CC);
}
RETURN_CCTOR(server);
}
示例13: PHP_METHOD
/**
* Magic __set_state helps to re-build messages variable exporting
*/
PHP_METHOD(Phalcon_Mvc_Model_Message, __set_state) {
zend_long ZEPHIR_LAST_CALL_STATUS;
zval *message_param = NULL, *_0, *_1, *_2, *_3;
zval *message = NULL;
ZEPHIR_MM_GROW();
zephir_fetch_params(1, 1, 0, &message_param);
message = message_param;
object_init_ex(return_value, phalcon_mvc_model_message_ce);
zephir_array_fetch_string(&_0, message, SL("_message"), PH_NOISY | PH_READONLY, "phalcon/mvc/model/message.zep", 172 TSRMLS_CC);
zephir_array_fetch_string(&_1, message, SL("_field"), PH_NOISY | PH_READONLY, "phalcon/mvc/model/message.zep", 172 TSRMLS_CC);
zephir_array_fetch_string(&_2, message, SL("_type"), PH_NOISY | PH_READONLY, "phalcon/mvc/model/message.zep", 172 TSRMLS_CC);
zephir_array_fetch_string(&_3, message, SL("_code"), PH_NOISY | PH_READONLY, "phalcon/mvc/model/message.zep", 172 TSRMLS_CC);
ZEPHIR_CALL_METHOD(NULL, return_value, "__construct", NULL, 8, _0, _1, _2, _3);
zephir_check_call_status();
RETURN_MM();
}
示例14: PHP_METHOD
/**
* Makes a connection to the Beanstalkd server
*/
PHP_METHOD(Phalcon_Queue_Beanstalk, connect) {
zephir_nts_static zephir_fcall_cache_entry *_4 = NULL, *_6 = NULL;
int ZEPHIR_LAST_CALL_STATUS;
zval *connection = NULL, *parameters, *_0, *_1, *_2, *_3, _5;
ZEPHIR_MM_GROW();
ZEPHIR_OBS_VAR(connection);
zephir_read_property_this(&connection, this_ptr, SL("_connection"), PH_NOISY_CC);
if (Z_TYPE_P(connection) == IS_RESOURCE) {
ZEPHIR_CALL_METHOD(NULL, this_ptr, "disconnect", NULL);
zephir_check_call_status();
}
ZEPHIR_OBS_VAR(parameters);
zephir_read_property_this(¶meters, this_ptr, SL("_parameters"), PH_NOISY_CC);
zephir_array_fetch_string(&_0, parameters, SL("host"), PH_NOISY | PH_READONLY, "phalcon/queue/beanstalk.zep", 78 TSRMLS_CC);
zephir_array_fetch_string(&_1, parameters, SL("port"), PH_NOISY | PH_READONLY, "phalcon/queue/beanstalk.zep", 78 TSRMLS_CC);
ZEPHIR_INIT_VAR(_2);
ZVAL_NULL(_2);
ZEPHIR_INIT_VAR(_3);
ZVAL_NULL(_3);
Z_SET_ISREF_P(_2);
ZEPHIR_CALL_FUNCTION(&connection, "fsockopen", &_4, _0, _1, _2, _3);
Z_UNSET_ISREF_P(_2);
zephir_check_call_status();
if (Z_TYPE_P(connection) != IS_RESOURCE) {
ZEPHIR_THROW_EXCEPTION_DEBUG_STR(phalcon_exception_ce, "Can't connect to Beanstalk server", "phalcon/queue/beanstalk.zep", 80);
return;
}
ZEPHIR_SINIT_VAR(_5);
ZVAL_LONG(&_5, -1);
ZEPHIR_CALL_FUNCTION(NULL, "stream_set_timeout", &_6, connection, &_5, ZEPHIR_GLOBAL(global_null));
zephir_check_call_status();
zephir_update_property_this(this_ptr, SL("_connection"), connection TSRMLS_CC);
RETURN_CCTOR(connection);
}
示例15: PHP_METHOD
/**
* Instantiates route based on passed Yaf_Config_Abstract structure
*
* @param array $config Configuration object
*/
PHP_METHOD(Yaf_Route_Rewrite, getInstance) {
int ZEPHIR_LAST_CALL_STATUS;
zend_bool _0, _2;
zval *config_param = NULL, *_1, *_3, *_4, *_5;
zval *config = NULL;
ZEPHIR_MM_GROW();
zephir_fetch_params(1, 1, 0, &config_param);
zephir_get_arrval(config, config_param);
_0 = !(zephir_array_isset_string(config, SS("match")));
if (!(_0)) {
zephir_array_fetch_string(&_1, config, SL("match"), PH_NOISY | PH_READONLY, "yaf/Route/rewrite.zep", 21 TSRMLS_CC);
_0 = !(Z_TYPE_P(_1) == IS_STRING);
}
_2 = !(zephir_array_isset_string(config, SS("route")));
if (!(_2)) {
ZEPHIR_OBS_VAR(_3);
zephir_array_fetch_string(&_3, config, SL("route"), PH_NOISY, "yaf/Route/rewrite.zep", 23 TSRMLS_CC);
_2 = ZEPHIR_IS_EMPTY(_3);
}
if (_0) {
RETURN_MM_NULL();
} else if (_2) {
RETURN_MM_NULL();
} else {
object_init_ex(return_value, yaf_route_rewrite_ce);
zephir_array_fetch_string(&_4, config, SL("match"), PH_NOISY | PH_READONLY, "yaf/Route/rewrite.zep", 26 TSRMLS_CC);
zephir_array_fetch_string(&_5, config, SL("route"), PH_NOISY | PH_READONLY, "yaf/Route/rewrite.zep", 26 TSRMLS_CC);
ZEPHIR_CALL_METHOD(NULL, return_value, "__construct", NULL, _4, _5);
zephir_check_call_status();
RETURN_MM();
}
}