summaryrefslogtreecommitdiffstats
path: root/php_common_handlers.c
diff options
context:
space:
mode:
Diffstat (limited to 'php_common_handlers.c')
-rw-r--r--php_common_handlers.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/php_common_handlers.c b/php_common_handlers.c
new file mode 100644
index 0000000..73e5006
--- /dev/null
+++ b/php_common_handlers.c
@@ -0,0 +1,21 @@
+#include "php_common_handlers.h"
+#include "zend_smart_str.h"
+
+int ds_default_cast_object(zval *obj, zval *return_value, int type)
+{
+ switch (type) {
+ case IS_STRING: {
+ smart_str buffer = {0};
+
+ smart_str_appendl(&buffer, "object(", 7);
+ smart_str_append (&buffer, Z_OBJCE_P(obj)->name);
+ smart_str_appendc(&buffer, ')');
+
+ smart_str_0(&buffer);
+ ZVAL_STR(return_value, buffer.s);
+ return SUCCESS;
+ }
+ }
+
+ return FAILURE;
+}