- if (Z_OBJ_HT_P(zdt)->cast_object
- && SUCCESS == Z_OBJ_HT_P(zdt)->cast_object(zdt, &rv, IS_STRING TSRMLS_CC)
- ) {
- *str_len = Z_STRLEN(rv);
- *str_buf = Z_STRVAL(rv);
- } else if (instanceof_function(Z_OBJCE_P(zdt), php_date_get_date_ce() TSRMLS_CC)) {
- zval *rv = NULL, *zfmt;
-
- MAKE_STD_ZVAL(zfmt);
- ZVAL_STRING(zfmt, format, 1);
- zend_call_method_with_1_params(&zdt, Z_OBJCE_P(zdt), NULL, "format", &rv, zfmt);
+ if (php_pq_cast_object(zdt, IS_STRING, &rv)) {
+ return Z_STR(rv);
+ } else if (instanceof_function(Z_OBJCE_P(zdt), php_date_get_date_ce())) {
+ zval rv, zfmt;
+
+ ZVAL_NULL(&rv);
+ ZVAL_STRING(&zfmt, format);
+ php_pq_call_method(zdt, "format", 1, &rv, &zfmt);