1 /* 2 +----------------------------------------------------------------------+ 3 | PHP Version 7 | 4 +----------------------------------------------------------------------+ 5 | Copyright (c) 2006-2018 The PHP Group | 6 +----------------------------------------------------------------------+ 7 | This source file is subject to version 3.01 of the PHP license, | 8 | that is bundled with this package in the file LICENSE, and is | 9 | available through the world-wide-web at the following url: | 10 | http://www.php.net/license/3_01.txt | 11 | If you did not receive a copy of the PHP license and are unable to | 12 | obtain it through the world-wide-web, please send a note to | 13 | license@php.net so we can mail you a copy immediately. | 14 +----------------------------------------------------------------------+ 15 | Authors: Andrey Hristov <andrey@php.net> | 16 | Ulf Wendel <uw@php.net> | 17 +----------------------------------------------------------------------+ 18 */ 19 20 #ifndef MYSQLND_PS_H 21 #define MYSQLND_PS_H 22 23 /* PS stuff */ 24 typedef void (*ps_field_fetch_func)(zval * zv, const MYSQLND_FIELD * const field, const unsigned int pack_len, const zend_uchar ** row); 25 26 struct st_mysqlnd_perm_bind { 27 ps_field_fetch_func func; 28 /* should be signed int */ 29 int pack_len; 30 unsigned int php_type; 31 zend_bool is_possibly_blob; 32 zend_bool can_ret_as_str_in_uni; 33 }; 34 35 extern struct st_mysqlnd_perm_bind mysqlnd_ps_fetch_functions[MYSQL_TYPE_LAST + 1]; 36 37 enum_func_status mysqlnd_stmt_fetch_row_buffered(MYSQLND_RES * result, void * param, const unsigned int flags, zend_bool * fetched_anything); 38 enum_func_status mysqlnd_fetch_stmt_row_cursor(MYSQLND_RES * result, void * param, const unsigned int flags, zend_bool * fetched_anything); 39 40 void _mysqlnd_init_ps_subsystem();/* This one is private, mysqlnd_library_init() will call it */ 41 void _mysqlnd_init_ps_fetch_subsystem(); 42 43 void ps_fetch_from_1_to_8_bytes(zval * zv, const MYSQLND_FIELD * const field, const unsigned int pack_len, const zend_uchar ** row, unsigned int byte_count); 44 45 #endif /* MYSQLND_PS_H */ 46 47 /* 48 * Local variables: 49 * tab-width: 4 50 * c-basic-offset: 4 51 * End: 52 * vim600: noet sw=4 ts=4 fdm=marker 53 * vim<600: noet sw=4 ts=4 54 */ 55