Services webmasters
Partenaires
Jeux concours gratuits
 
Gestion des arguments
<<<
Implémentation en PHP du nombre variable d'arguments avec fsockopen(). Gestion des arguments
>>>

8.9.4 Traitement des nombres d'arguments variables et des paramètres optionnels
8.9 Gestion des arguments
8 Développer PHP 4.0
 Manuel PHP

->Implémentation en PHP du nombre variable d'arguments avec fsockopen().

Implémentation en PHP du nombre variable d'arguments avec fsockopen().

pval **args[5];
int *sock=emalloc(sizeof(int));
int *sockp;
int arg_count=ARG_COUNT(ht);
int socketd = -1;
unsigned char udp = 0;
struct timeval timeout = { 60, 0 };
unsigned short portno;
unsigned long conv;
char *key = NULL;
FLS_FETCH();

if (arg_count > 5 || arg_count < 2 || zend_get_parameters_array_ex(arg_count,args)==FAILURE) {
    CLOSE_SOCK(1);
    WRONG_PARAM_COUNT;
}

switch(arg_count) {
    case 5:
        convert_to_double_ex(args[4]);
        conv = (unsigned long) (Z_DVAL_P(args[4]) * 1000000.0);
        timeout.tv_sec = conv / 1000000;
        timeout.tv_usec = conv % 1000000;
        /* fall-through */
    case 4:
        if (!PZVAL_IS_REF(*args[3])) {
            php_error(E_WARNING,"error string argument to fsockopen not passed by reference");
        }
        pval_copy_constructor(*args[3]);
        ZVAL_EMPTY_STRING(*args[3]);
        /* fall-through */
    case 3:
        if (!PZVAL_IS_REF(*args[2])) {
            php_error(E_WARNING,"error argument to fsockopen not passed by reference");
            return;
        }
        ZVAL_LONG(*args[2], 0);
        break;
}

convert_to_string_ex(args[0]);
convert_to_long_ex(args[1]);
portno = (unsigned short) Z_LVAL_P(args[1]);

key = emalloc(Z_STRLEN_P(args[0]) + 10);
<< Implémentation en PHP du nombre variable d'arguments avec fsockopen(). >>
Gestion des arguments Traitement des nombres d'arguments variables et des paramètres optionnels Gestion des arguments
Services webmasters
Les manuels
 
CoursPHP.com - Reproduction interdite -