Example #1
0
function write_text($query, $reversed, $line)
{
    if ($query == 'line') {
        $result = "查询结果:\n☆";
        $result .= implode("\n☆", $line);
        write_ok_text($result);
    } elseif ($query == 'bus') {
        $bus = $line[0];
        $bus_info = get_bus_info($bus, $reversed);
        $bus_pos = cache_bus_pos($bus, $reversed);
        $result = __convert($line, $bus_info, $bus_pos);
        write_ok_text($result);
    } else {
        write_error_text($GLOBALS['ERR_PARAMS_QUERY']);
    }
}
    echo "Mem real: " . __convert(memory_get_usage(true)) . "\n";
    unset($array);
    echo "\n-- SplDoublyLinkedList \n";
    echo "Mem usage: " . __convert(memory_get_usage()) . "\n";
    echo "Mem real: " . __convert(memory_get_usage(true)) . "\n";
    $s = microtime(true);
    $spl = new SplDoublyLinkedList();
    for ($i = 0; $i < $v; $i++) {
        $spl->push($i);
    }
    try {
        $spl->offsetUnset(102);
        var_dump($spl->offsetGet(100));
        var_dump($spl->offsetGet(102));
    } catch (OutOfRangeException $e) {
        echo $e;
    }
    $e = microtime(true);
    echo "Count: " . $spl->count() . "\n";
    echo "Elapsed time: " . ($e - $s) . " sec.\n";
    echo "Mem usage: " . __convert(memory_get_usage()) . "\n";
    echo "Mem real: " . __convert(memory_get_usage(true)) . "\n";
    try {
        for ($i = 0; $i < $v; $i++) {
            $spl->pop();
        }
    } catch (Exception $e) {
    }
    unset($spl);
    echo "\n";
}