Q. zend_parse_parameters() - allow grouping of optional parameters.

From: Date: Wed, 10 Oct 2007 07:38:01 +0000
Subject: Q. zend_parse_parameters() - allow grouping of optional parameters.
Groups: php.internals 
Request: Send a blank email to internals+get-32718@lists.php.net to get a copy of this message
Hi. From what I understand about the argument list for zend_parse_parameters(), you separate optional parameters from mandatory ones using pipe (|). e.g. if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "lll|llll", &m, &d, &y, &h, &n, &s, &ms) == FAILURE) { In the above example, this says that there are 3 mandatory parameters and upto 4 optional parameters. The prototype for this looks like ... proto bool myExampleDateFunc(int month, int day, int year, [int hour [, int min [, int sec [,int msec]]]]) Is there a way to make the prototype ... proto bool myExampleDateFunc(int month, int day, int year, [int hour, int min, int sec[, int msec]]) So, making this function accept 3 or 6 or 7 parameters only. I'm guessing not, but I'm guessing. I think this has to be checked using ... switch (ZEND_NUM_ARGS()) { after parsing the parameters and generate an error for ZEND_NUM_ARGS = 4 or 5. Regards, Richard. -- ----- Richard Quadling Zend Certified Engineer : http://zend.com/zce.php?c=ZEND002498&r=213474731 "Standing on the shoulders of some very clever giants!"

« previous php.internals (#32718) next »