diff options
| author | Andrey Hristov <andrey@php.net> | 2008-08-06 19:25:03 +0000 | 
|---|---|---|
| committer | Andrey Hristov <andrey@php.net> | 2008-08-06 19:25:03 +0000 | 
| commit | 2c841008f0cbf877699356320de71e0ad0a6eadd (patch) | |
| tree | bf2fb9ad1e097e8e55fea75997c740a59729e280 /ext/mysql/php_mysql.c | |
| parent | f4e7f168e9f98582843f1dbd036b2d4cec07bb00 (diff) | |
| download | php-git-2c841008f0cbf877699356320de71e0ad0a6eadd.tar.gz | |
Re-add mysql_set_charset. Missed during introduction of mysqlnd. Exists in
HEAD, thus no merge
Diffstat (limited to 'ext/mysql/php_mysql.c')
| -rw-r--r-- | ext/mysql/php_mysql.c | 34 | 
1 files changed, 33 insertions, 1 deletions
diff --git a/ext/mysql/php_mysql.c b/ext/mysql/php_mysql.c index b395f6cdc6..abc06503f7 100644 --- a/ext/mysql/php_mysql.c +++ b/ext/mysql/php_mysql.c @@ -192,7 +192,9 @@ static const zend_function_entry mysql_functions[] = {  #endif  	PHP_FE(mysql_info,									NULL) -	  +#ifdef MYSQL_HAS_SET_CHARSET +	PHP_FE(mysql_set_charset,							NULL) +#endif	   	/* for downwards compatability */  	PHP_FALIAS(mysql,				mysql_db_query,		NULL)  	PHP_FALIAS(mysql_fieldname,		mysql_field_name,	NULL) @@ -1242,6 +1244,36 @@ PHP_FUNCTION(mysql_client_encoding)  /* }}} */  #endif +#ifdef MYSQL_HAS_SET_CHARSET +/* {{{ proto bool mysql_set_charset(string csname [, int link_identifier]) +   sets client character set */ +PHP_FUNCTION(mysql_set_charset) +{ +	zval *mysql_link = NULL; +	char *csname; +	int id = -1, csname_len; +	php_mysql_conn *mysql; + +	if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|r", &csname, &csname_len, &mysql_link) == FAILURE) { +		return; +	} + +	if (ZEND_NUM_ARGS() == 1) { +		id = php_mysql_get_default_link(INTERNAL_FUNCTION_PARAM_PASSTHRU); +		CHECK_LINK(id); +	} + +	ZEND_FETCH_RESOURCE2(mysql, php_mysql_conn *, &mysql_link, id, "MySQL-Link", le_link, le_plink); + +	if (!mysql_set_character_set(mysql->conn, csname)) { +		RETURN_TRUE; +	} else { +		RETURN_FALSE; +	} +} +/* }}} */ +#endif +  #ifndef NETWARE		/* The below two functions not supported on NetWare */  #if MYSQL_VERSION_ID < 40000  /* {{{ proto bool mysql_create_db(string database_name [, int link_identifier])  | 
