var _MAX_INT = 256*256*256*16-1;
function jsArray2Php(tab) {

    var chaine = "";
    var idx = 0;
    for (i in tab) {
        if (isNaN(i)) chaine += "s:" + i.length + ":\"" + i + "\";";
        else chaine += "i:" + i + ";";
        var valeur = tab[i];
        switch (typeof valeur) {
            case "string" : 
                valeur = formaterChaine(valeur);
                chaine += "s:" + valeur.length + ":\"" + valeur + "\";";
                break;
            case "number" :
                if (valeur > parseInt(valeur)) chaine += "d:" + valeur + ";";
                else if (valeur > _MAX_INT) chaine += "d:" + valeur + ";";
                else chaine += "i:" + valeur + ";";
                break;
            case "boolean" :
                chaine += "b:" + ((valeur === true) ? 1 : 0) + ";";
                break;
            case "object" :
                if (valeur === null) chaine += "N;"; 
                else chaine += jsArray2Php(valeur);
                break;
            default : 
                chaine += "N;";
        }
        idx++;
    }
    return "a:" + idx + ":{" + chaine + "}";
}

function formaterChaine(chaine) {
    return chaine.replace(/\"/g, "&quot;");
}
