@@ -68,6 +68,11 @@ ZEND_BEGIN_ARG_INFO_EX(SeasCilck_construct, 0, 0, 1)
6868ZEND_ARG_INFO(0 , connectParames)
6969ZEND_END_ARG_INFO()
7070
71+
72+ ZEND_BEGIN_ARG_INFO_EX(SeasCilck_destruct, 0 , 0 , 1 )
73+ ZEND_ARG_INFO(0 , params)
74+ ZEND_END_ARG_INFO()
75+
7176ZEND_BEGIN_ARG_INFO_EX(SeasCilck_select, 0 , 0 , 2 )
7277ZEND_ARG_INFO(0 , sql)
7378ZEND_ARG_INFO(0 , params)
@@ -107,7 +112,7 @@ const zend_function_entry SeasClick_functions[] =
107112const zend_function_entry SeasClick_methods[] =
108113{
109114 PHP_ME (SEASCLICK_RES_NAME, __construct, SeasCilck_construct, ZEND_ACC_PUBLIC | ZEND_ACC_CTOR)
110- PHP_ME (SEASCLICK_RES_NAME, __destruct, NULL , ZEND_ACC_PUBLIC | ZEND_ACC_DTOR)
115+ PHP_ME (SEASCLICK_RES_NAME, __destruct, SeasCilck_destruct , ZEND_ACC_PUBLIC | ZEND_ACC_DTOR)
111116 PHP_ME (SEASCLICK_RES_NAME, select, SeasCilck_select, ZEND_ACC_PUBLIC)
112117 PHP_ME (SEASCLICK_RES_NAME, insert, SeasCilck_insert, ZEND_ACC_PUBLIC)
113118 PHP_ME (SEASCLICK_RES_NAME, writeStart, SeasCilck_writeStart, ZEND_ACC_PUBLIC)
@@ -128,12 +133,24 @@ PHP_MINIT_FUNCTION(SeasClick)
128133#else
129134 SeasClick_ce = zend_register_internal_class_ex (&SeasClick, NULL , NULL TSRMLS_CC);
130135#endif
136+
137+ #if PHP_VERSION_ID <= 70000
131138 zend_declare_property_stringl (SeasClick_ce, " host" , strlen (" host" ), " 127.0.0.1" , sizeof (" 127.0.0.1" ) - 1 , ZEND_ACC_PROTECTED TSRMLS_CC);
132139 zend_declare_property_long (SeasClick_ce, " port" , strlen (" port" ), 9000 , ZEND_ACC_PROTECTED TSRMLS_CC);
133140 zend_declare_property_stringl (SeasClick_ce, " database" , strlen (" database" ), " default" , sizeof (" default" ) - 1 , ZEND_ACC_PROTECTED TSRMLS_CC);
134141 zend_declare_property_null (SeasClick_ce, " user" , strlen (" user" ), ZEND_ACC_PROTECTED TSRMLS_CC);
135142 zend_declare_property_null (SeasClick_ce, " passwd" , strlen (" passwd" ), ZEND_ACC_PROTECTED TSRMLS_CC);
136143 zend_declare_property_bool (SeasClick_ce, " compression" , strlen (" compression" ), false , ZEND_ACC_PROTECTED TSRMLS_CC);
144+ #else
145+ zend_declare_property_stringl (SeasClick_ce, " host" , strlen (" host" ), " 127.0.0.1" , sizeof (" 127.0.0.1" ) - 1 , ZEND_ACC_PROTECTED );
146+ zend_declare_property_long (SeasClick_ce, " port" , strlen (" port" ), 9000 , ZEND_ACC_PROTECTED );
147+ zend_declare_property_stringl (SeasClick_ce, " database" , strlen (" database" ), " default" , sizeof (" default" ) - 1 , ZEND_ACC_PROTECTED );
148+ zend_declare_property_null (SeasClick_ce, " user" , strlen (" user" ), ZEND_ACC_PROTECTED );
149+ zend_declare_property_null (SeasClick_ce, " passwd" , strlen (" passwd" ), ZEND_ACC_PROTECTED );
150+ zend_declare_property_bool (SeasClick_ce, " compression" , strlen (" compression" ), false , ZEND_ACC_PROTECTED );
151+ #endif
152+
153+
137154
138155 SeasClick_ce->ce_flags |= ZEND_ACC_FINAL;
139156 return SUCCESS;
@@ -224,19 +241,19 @@ PHP_METHOD(SEASCLICK_RES_NAME, __construct)
224241 if (php_array_get_value (_ht, " host" , value))
225242 {
226243 convert_to_string (value);
227- zend_update_property_string (SeasClick_ce, this_obj, " host" , sizeof (" host" ) - 1 , Z_STRVAL_P (value) TSRMLS_CC );
244+ sc_zend_update_property_string (SeasClick_ce, this_obj, " host" , sizeof (" host" ) - 1 , Z_STRVAL_P (value));
228245 }
229246
230247 if (php_array_get_value (_ht, " port" , value))
231248 {
232249 convert_to_long (value);
233- zend_update_property_long (SeasClick_ce, this_obj, " port" , sizeof (" port" ) - 1 , Z_LVAL_P (value) TSRMLS_CC );
250+ sc_zend_update_property_long (SeasClick_ce, this_obj, " port" , sizeof (" port" ) - 1 , Z_LVAL_P (value));
234251 }
235252
236253 if (php_array_get_value (_ht, " compression" , value))
237254 {
238255 convert_to_boolean (value);
239- zend_update_property_bool (SeasClick_ce, this_obj, " compression" , sizeof (" compression" ) - 1 , Z_LVAL_P (value) TSRMLS_CC );
256+ sc_zend_update_property_long (SeasClick_ce, this_obj, " compression" , sizeof (" compression" ) - 1 , Z_LVAL_P (value));
240257 }
241258
242259 zval *host = sc_zend_read_property (SeasClick_ce, this_obj, " host" , sizeof (" host" ) - 1 , 0 );
@@ -255,21 +272,21 @@ PHP_METHOD(SEASCLICK_RES_NAME, __construct)
255272 if (php_array_get_value (_ht, " database" , value))
256273 {
257274 convert_to_string (value);
258- zend_update_property_string (SeasClick_ce, this_obj, " database" , sizeof (" database" ) - 1 , Z_STRVAL_P (value) TSRMLS_CC );
275+ sc_zend_update_property_string (SeasClick_ce, this_obj, " database" , sizeof (" database" ) - 1 , Z_STRVAL_P (value));
259276 Options = Options.SetDefaultDatabase (Z_STRVAL_P (value));
260277 }
261278
262279 if (php_array_get_value (_ht, " user" , value))
263280 {
264281 convert_to_string (value);
265- zend_update_property_string (SeasClick_ce, this_obj, " user" , sizeof (" user" ) - 1 , Z_STRVAL_P (value) TSRMLS_CC );
282+ sc_zend_update_property_string (SeasClick_ce, this_obj, " user" , sizeof (" user" ) - 1 , Z_STRVAL_P (value));
266283 Options = Options.SetUser (Z_STRVAL_P (value));
267284 }
268285
269286 if (php_array_get_value (_ht, " passwd" , value))
270287 {
271288 convert_to_string (value);
272- zend_update_property_string (SeasClick_ce, this_obj, " passwd" , sizeof (" passwd" ) - 1 , Z_STRVAL_P (value) TSRMLS_CC );
289+ sc_zend_update_property_string (SeasClick_ce, this_obj, " passwd" , sizeof (" passwd" ) - 1 , Z_STRVAL_P (value));
273290 Options = Options.SetPassword (Z_STRVAL_P (value));
274291 }
275292
@@ -283,7 +300,7 @@ PHP_METHOD(SEASCLICK_RES_NAME, __construct)
283300 }
284301 catch (const std::exception& e)
285302 {
286- sc_zend_throw_exception (NULL , e.what (), 0 TSRMLS_CC );
303+ sc_zend_throw_exception_tsrmls_cc (NULL , e.what (), 0 );
287304 }
288305
289306 RETURN_TRUE;
@@ -398,7 +415,7 @@ PHP_METHOD(SEASCLICK_RES_NAME, select)
398415 }
399416 catch (const std::exception& e)
400417 {
401- sc_zend_throw_exception (NULL , e.what (), 0 TSRMLS_CC );
418+ sc_zend_throw_exception_tsrmls_cc (NULL , e.what (), 0 );
402419 }
403420}
404421/* }}} */
@@ -506,7 +523,7 @@ PHP_METHOD(SEASCLICK_RES_NAME, insert)
506523 }
507524 catch (const std::exception& e)
508525 {
509- sc_zend_throw_exception (NULL , e.what (), 0 TSRMLS_CC );
526+ sc_zend_throw_exception_tsrmls_cc (NULL , e.what (), 0 );
510527 }
511528 RETURN_TRUE;
512529}
@@ -561,7 +578,7 @@ PHP_METHOD(SEASCLICK_RES_NAME, writeStart)
561578 }
562579 catch (const std::exception& e)
563580 {
564- sc_zend_throw_exception (NULL , e.what (), 0 TSRMLS_CC );
581+ sc_zend_throw_exception_tsrmls_cc (NULL , e.what (), 0 );
565582 }
566583 RETURN_TRUE;
567584}
@@ -662,7 +679,7 @@ PHP_METHOD(SEASCLICK_RES_NAME, write)
662679 }
663680 catch (const std::exception& e)
664681 {
665- sc_zend_throw_exception (NULL , e.what (), 0 TSRMLS_CC );
682+ sc_zend_throw_exception_tsrmls_cc (NULL , e.what (), 0 );
666683 }
667684 RETURN_TRUE;
668685}
@@ -682,7 +699,7 @@ PHP_METHOD(SEASCLICK_RES_NAME, writeEnd)
682699 }
683700 catch (const std::exception& e)
684701 {
685- sc_zend_throw_exception (NULL , e.what (), 0 TSRMLS_CC );
702+ sc_zend_throw_exception_tsrmls_cc (NULL , e.what (), 0 );
686703 }
687704 RETURN_TRUE;
688705}
@@ -750,7 +767,7 @@ PHP_METHOD(SEASCLICK_RES_NAME, execute)
750767 }
751768 catch (const std::exception& e)
752769 {
753- sc_zend_throw_exception (NULL , e.what (), 0 TSRMLS_CC );
770+ sc_zend_throw_exception_tsrmls_cc (NULL , e.what (), 0 );
754771 }
755772 RETURN_TRUE;
756773}
@@ -771,7 +788,7 @@ PHP_METHOD(SEASCLICK_RES_NAME, __destruct)
771788 }
772789 catch (const std::exception& e)
773790 {
774- sc_zend_throw_exception (NULL , e.what (), 0 TSRMLS_CC );
791+ sc_zend_throw_exception_tsrmls_cc (NULL , e.what (), 0 );
775792 }
776793 RETURN_TRUE;
777794}
0 commit comments