Exemplo n.º 1
0
function savaShopDetail($d, $fp, $type)
{
    $pk = new PackageIn();
    $r = $d->DataList;
    $count = count($r);
    $lable = $d->Tag;
    $pk->writeByte($count);
    for ($i = 0; $i < $count; $i++) {
        foreach ($r[$i] as $key => $value) {
            switch ($lable[$key]) {
                case "int":
                    $pk->writeInt($value);
                    break;
                case "string":
                    $pk->writeUTF($value);
                    break;
                case "byte":
                    $pk->writeByte($value);
                    break;
                case "short":
                    $pk->writeShort($value);
                    break;
            }
        }
        $d1 = Provider::getInstance()->getShopCategoryList($r[$i][0]);
        $r1 = $d1->DataList;
        $count1 = count($r1);
        $lable1 = $d1->Tag;
        $pk->writeByte($count1);
        for ($j = 0; $j < $count1; $j++) {
            $pk->writeUTF($r1[$j][1]);
            $d2 = Provider::getInstance()->getShopItemsList($r1[$j][0], $r[$i][0]);
            $r2 = $d2->DataList;
            $count2 = count($r2);
            $lable2 = $d2->Tag;
            $pk->writeShort($count2);
            for ($j1 = 0; $j1 < $count2; $j1++) {
                foreach ($r2[$j1] as $key1 => $value1) {
                    switch ($lable2[$key1]) {
                        case "int":
                            $pk->writeInt($value1);
                            break;
                        case "string":
                            $pk->writeUTF($value1);
                            break;
                        case "byte":
                            $pk->writeByte($value1);
                            break;
                        case "short":
                            $pk->writeShort($value1);
                            break;
                    }
                }
            }
        }
    }
    $str = pack("C", $type);
    //type
    fwrite($fp, $str);
    $str = pack("N", $pk->len);
    //len
    fwrite($fp, $str);
    mypack($fp, $pk->data->format, $pk->data->params);
}
Exemplo n.º 2
0
require_once dirname(__FILE__) . '/api/Provider.php';
require_once dirname(__FILE__) . '/lib/SqlResult.php';
require_once dirname(__FILE__) . '/Package/PackageIn.php';
require_once dirname(__FILE__) . '/Package/PHPPack.php';
ini_set("memory_limit", "-1");
$fp = fopen("FilterContentList.data", 'wb') or die("cannot open FilterContentList.data");
$str = pack("C", 0);
//v
fwrite($fp, $str);
$str = pack("C", 0);
//v
fwrite($fp, $str);
$str = pack("C", 1);
//v
fwrite($fp, $str);
$d = Provider::getInstance()->getFilterContent();
sava($d, $fp);
fclose($fp);
echo "export suc", "\n";
function sava($d, $fp)
{
    $pk = new PackageIn();
    $r = $d->DataList;
    $count = count($r);
    $lable = $d->Tag;
    $pk->writeInt($count);
    for ($i = 0; $i < $count; $i++) {
        foreach ($r[$i] as $key => $value) {
            switch ($lable[$key]) {
                case "int":
                    $pk->writeInt($value);