mirror of
https://github.com/php/php-src.git
synced 2025-08-16 14:08:47 +02:00
removed charset structure. libmysql now provides a function
mysqli_get_character_set_info (Vers. 5.0.10)
This commit is contained in:
parent
2f558a3798
commit
9caaee66bd
2 changed files with 16 additions and 37 deletions
|
@ -329,7 +329,7 @@ PHP_FUNCTION(mysqli_get_charset)
|
|||
{
|
||||
MY_MYSQL *mysql;
|
||||
zval *mysql_link;
|
||||
CHARSET_INFO *cs;
|
||||
MY_CHARSET_INFO cs;
|
||||
|
||||
if (zend_parse_method_parameters(ZEND_NUM_ARGS() TSRMLS_CC, getThis(), "O", &mysql_link, mysqli_link_class_entry) == FAILURE) {
|
||||
return;
|
||||
|
@ -338,13 +338,16 @@ PHP_FUNCTION(mysqli_get_charset)
|
|||
|
||||
object_init(return_value);
|
||||
|
||||
cs = (CHARSET_INFO *)mysql->mysql->charset;
|
||||
mysql_get_character_set_info(mysql->mysql, &cs);
|
||||
|
||||
add_property_string(return_value, "charset", (cs->name) ? (char *)cs->csname : "", 1);
|
||||
add_property_string(return_value, "collation",(cs->name) ? (char *)cs->name : "", 1);
|
||||
add_property_string(return_value, "comment", (cs->comment) ? (char *)cs->comment : "", 1);
|
||||
add_property_long(return_value, "min_length", cs->mbminlen);
|
||||
add_property_long(return_value, "max_length", cs->mbmaxlen);
|
||||
add_property_string(return_value, "charset", (cs.name) ? (char *)cs.csname : "", 1);
|
||||
add_property_string(return_value, "collation",(cs.name) ? (char *)cs.name : "", 1);
|
||||
add_property_string(return_value, "comment", (cs.comment) ? (char *)cs.comment : "", 1);
|
||||
add_property_string(return_value, "dir", (cs.dir) ? (char *)cs.dir : "", 1);
|
||||
add_property_long(return_value, "min_length", cs.mbminlen);
|
||||
add_property_long(return_value, "max_length", cs.mbmaxlen);
|
||||
add_property_long(return_value, "number", cs.number);
|
||||
add_property_long(return_value, "state", cs.state);
|
||||
}
|
||||
/* }}} */
|
||||
|
||||
|
|
|
@ -26,6 +26,12 @@
|
|||
#endif
|
||||
|
||||
#include <mysql.h>
|
||||
|
||||
/* character set support */
|
||||
#if MYSQL_VERSION_ID > 50009
|
||||
#define HAVE_MYSQLI_SET_CHARSET
|
||||
#endif
|
||||
|
||||
#include <errmsg.h>
|
||||
|
||||
#ifndef PHP_MYSQLI_H
|
||||
|
@ -96,32 +102,6 @@ typedef struct {
|
|||
void *userdata;
|
||||
} mysqli_local_infile;
|
||||
|
||||
typedef struct {
|
||||
uint number;
|
||||
uint primary_number;
|
||||
uint binary_number;
|
||||
uint state;
|
||||
const char *csname;
|
||||
const char *name;
|
||||
const char *comment;
|
||||
const char *tailoring;
|
||||
unsigned char *ctype;
|
||||
unsigned char *to_lower;
|
||||
unsigned char *to_upper;
|
||||
unsigned char *sort_order;
|
||||
unsigned short *contractions;
|
||||
unsigned short **sort_order_big;
|
||||
unsigned short *tab_to_uni;
|
||||
void *tab_from_uni;
|
||||
unsigned char *state_map;
|
||||
unsigned char *ident_map;
|
||||
uint strxfrm_multiply;
|
||||
uint mbminlen;
|
||||
uint mbmaxlen;
|
||||
unsigned short min_sort_char;
|
||||
unsigned short max_sort_char; /* For LIKE optimization */
|
||||
} CHARSET_INFO;
|
||||
|
||||
#define phpext_mysqli_ptr &mysqli_module_entry
|
||||
|
||||
#ifdef PHP_WIN32
|
||||
|
@ -130,10 +110,6 @@ typedef struct {
|
|||
#define PHP_MYSQLI_API
|
||||
#endif
|
||||
|
||||
#if (MYSQL_VERSION_ID > 40112 && MYSQL_VERSION_ID < 50000) || MYSQL_VERSION_ID > 50005
|
||||
#define HAVE_MYSQLI_SET_CHARSET
|
||||
#endif
|
||||
|
||||
#ifdef ZTS
|
||||
#include "TSRM.h"
|
||||
#endif
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue