Пример #1
0
 function __query($sql)
 {
     sql_open();
     if (mysql_version() >= 50503) {
         return query($sql);
     } else {
         return query(str_replace('utf8mb4', 'utf8', $sql));
     }
 }
Пример #2
0
function query($query)
{
    global $pdo, $debug, $config;
    sql_open();
    if ($config['debug']) {
        $start = microtime(true);
        $query = $pdo->query($query);
        if (!$query) {
            return false;
        }
        $time = round((microtime(true) - $start) * 1000, 2) . 'ms';
        $debug['sql'][] = array('query' => $query->queryString, 'rows' => $query->rowCount(), 'time' => '~' . $time);
        return $query;
    }
    return $pdo->query($query);
}
Пример #3
0
function query($query)
{
    global $pdo, $debug, $config;
    $query = preg_replace('/``(' . $config['board_regex'] . ')``/u', '`' . $config['db']['prefix'] . '$1`', $query);
    sql_open();
    if ($config['debug']) {
        if ($config['debug_explain'] && preg_match('/^(SELECT|INSERT|UPDATE|DELETE) /i', $query)) {
            $explain = $pdo->query("EXPLAIN {$query}") or error(db_error());
        }
        $start = microtime(true);
        $query = $pdo->query($query);
        if (!$query) {
            return false;
        }
        $time = microtime(true) - $start;
        $debug['sql'][] = array('query' => $query->queryString, 'rows' => $query->rowCount(), 'explain' => isset($explain) ? $explain->fetchAll(PDO::FETCH_ASSOC) : null, 'time' => '~' . round($time * 1000, 2) . 'ms');
        $debug['time']['db_queries'] += $time;
        return $query;
    }
    return $pdo->query($query);
}
Пример #4
0
    }
}
$children = array();
foreach ($boards_m as $i => $bb) {
    $pid = pcntl_fork();
    if ($pid == -1) {
        die('Fork failed?');
    } else {
        if ($pid) {
            echo "Started PID #{$pid}...\n";
            $children[] = $pid;
        } else {
            unset($pdo);
            $i = 0;
            $total = sizeof($bb);
            sql_open();
            foreach ($bb as $i => $b) {
                $i++;
                doboard($b);
                echo "I'm on board {$i}/{$total}\n";
            }
            break;
        }
    }
}
printf("Complete! Took %g seconds\n", microtime(true) - $start);
unset($board);
foreach ($children as $child) {
    pcntl_waitpid($child, $status);
    unset($children[$child]);
}