예제 #1
0
// ############################################
echo '<h3>fetchManyCursor</h3>';
$counter = 0;
foreach ($dbh->fetchRowManyCursor($query, $conds) as $result) {
    echo '<h4>#' . ++$counter . ' cursor</h4>';
    var_dump($result);
}
// ############################################
echo '<h3>execute sql: truncate</h3>';
$response = $dbh->executeSql('TRUNCATE import_dump');
var_dump($response);
// ############################################
echo '<h3>insert</h3>';
echo '<h4>with ID response</h4>';
$data = ['id' => null, 'dump' => '{"message":"#One"}'];
$results = $dbh->insert('import_dump', $data);
var_dump($results);
echo '<h4>with NO-ID response</h4>';
$data = ['dump' => '{"message":"#One"}'];
$results = $dbh->insert('import_dump_no_id', $data);
var_dump($results);
// ############################################
echo '<h3>insertMany</h3>';
echo '<h4>with ID response</h4>';
$data = [['id' => null, 'dump' => '{"message":"Hello"}'], ['id' => null, 'dump' => '{"message":"Foo"}'], ['id' => null, 'dump' => '{"message":"Bar"}']];
$results = $dbh->insertMany('import_dump', $data);
var_dump($results);
echo '<h4>with NO-ID response</h4>';
$data = [['dump' => '{"message":"Hello"}'], ['dump' => '{"message":"Foo"}'], ['dump' => '{"message":"Bar"}']];
$results = $dbh->insertMany('import_dump_no_id', $data);
var_dump($results);
예제 #2
0
<?php

require __DIR__ . '/vendor/autoload.php';
require __DIR__ . '/config/config.php';
exit;
$vk = new \BW\Vkontakte($config['vk']);
$dbConn = new \Simplon\Mysql\Mysql($config['db']['host'], $config['db']['user'], $config['db']['password'], $config['db']['database']);
require __DIR__ . '/prepare-db.php.php';
// get group info
$group = $vk->api('groups.getById', ['group_id' => $config['group_id'], 'fields' => 'members_count'])[0];
$dbConn->insert('groups', ['vk_id' => $group['id']]);
$request_count = 1000;
$members_count = $group['members_count'];
$iterations_count = $members_count / $request_count;
for ($i = 0; $i < $iterations_count; $i++) {
    echo 'Fetching users ' . $request_count * $i . ' - ' . ($request_count * $i + $request_count) . PHP_EOL;
    $members = $vk->api('groups.getMembers', ['group_id' => $config['group_id'], 'fields' => 'sex,bdate', 'offset' => $request_count * $i, 'count' => $request_count]);
    echo 'Inserting them to database' . PHP_EOL;
    foreach ($members['items'] as $member) {
        $birth_date = null;
        if (isset($member['bdate'])) {
            $bdateParts = explode('.', $member['bdate']);
            $birth_date = count($bdateParts) == 3 ? implode('-', array_reverse($bdateParts)) : null;
        }
        $putMemeber = ['vk_id' => $member['id'], 'sex' => $member['sex'], 'birth_date' => $birth_date];
        try {
            $dbConn->insert('members', $putMemeber);
        } catch (Exception $e) {
        }
    }
}