| 
        php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login | 
  [2013-08-24 20:56 UTC] Azq2 at ya dot ru
 Description:
------------
I have this code in my extension: 
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ssssl|bl", &addr, 
&addr_length, &user, &user_length, &password, &password_length, &db, &db_length, 
&port, &persistent, &flags) != SUCCESS)
		WRONG_PARAM_COUNT; 
	
and i call from php: 
$db -> connect("127.0.0.2", "root", "qwerty", "test", 1); 
But... addr_length and user_length equals as zero O_O But addr and user not empty 
and contains my values... o_O
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits             
             | 
    |||||||||||||||||||||||||||
            
                 
                Copyright © 2001-2025 The PHP GroupAll rights reserved.  | 
        Last updated: Tue Nov 04 08:00:01 2025 UTC | 
String. $db -> connect("127.0.0.2", "root", "qwerty", "test", 1);NOT, ITS BUG. CODE: PHP_METHOD(Mysql, connect) { bool return_state = true; bool persistent = false; char *addr, *user, *password, *db, *connect_id = NULL, *socket = NULL, *host = NULL; int addr_length=0, user_length, password_length, db_length, connect_id_length = 0; uint socket_length = 0, host_length = 0; unsigned short port = 0; unsigned long flags = 0; zval *object = getThis(); php_mysql_object *obj = (php_mysql_object *)zend_object_store_get_object(object TSRMLS_CC); if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ssssl|bl", &addr, &addr_length, &user, &user_length, &password, &password_length, &db, &db_length, &port, &persistent, &flags) != SUCCESS) WRONG_PARAM_COUNT; printf("addr(%d) = %s\n", addr_length, addr); printf("user(%d) = %s\n", user_length, user); printf("password(%d) = %s\n", password_length, password); printf("db(%d) = %s\n", db_length, db); php code: $db -> connect("127.0.0.2", "root", "qwerty", "test", 1); Returns: addr(0) = 127.0.0.2 user(0) = root password(6) = qwerty db(4) = test