Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- $servername = "localhost";
- $username = "root";
- $password = "root";
- $dbname = "testing";
- // Create connection
- $conn = new mysqli($servername, $username, $password, $dbname);
- function getDataFromExternalApi ($url) {
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_URL, $url);
- curl_setopt($ch, CURLOPT_POST, 0);
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
- $server_output = curl_exec($ch);
- curl_close($ch);
- $data = json_decode($server_output);
- return $data;
- }
- function multiCurlReq($urlArray) {
- $nodes = $urlArray;
- $node_count = count($nodes);
- $curl_arr = array();
- $master = curl_multi_init();
- for($i = 0; $i < $node_count; $i++)
- {
- $url =$nodes[$i];
- $curl_arr[$i] = curl_init($url);
- curl_setopt($curl_arr[$i], CURLOPT_RETURNTRANSFER, true);
- curl_multi_add_handle($master, $curl_arr[$i]);
- }
- do {
- curl_multi_exec($master,$running);
- } while($running > 0);
- for($i = 0; $i < $node_count; $i++)
- {
- $results[] = curl_multi_getcontent ( $curl_arr[$i] );
- }
- echo '<pre>';
- print_r($results);
- }
- $playerUrl = "https://fantasy.premierleague.com/drf/bootstrap-static";
- $mainMetaData = getDataFromExternalApi($playerUrl);
- function seedPlayer() {
- $detailUrlArray = array();
- // further processing ....
- if($mainMetaData && $mainMetaData->elements) {
- foreach ($mainMetaData->elements as $key => $value) {
- $playerId = $value->id;
- $playerDetailUrl = "https://fantasy.premierleague.com/drf/element-summary/".$playerId;
- array_push($detailUrlArray,$playerDetailUrl);
- // $sql = "INSERT INTO players (data, player_id) VALUES ('John', '.$playerId)";
- }
- multiCurlReq($detailUrlArray);
- // var_dump($detailUrlArray);die();
- }
- }
- function seedEvents ($mainMetaData, $conn) {
- if($mainMetaData && $mainMetaData->events) {
- // $cSQLt = "TRUNCATE TABLE events";
- foreach ($mainMetaData->events as $key => $value) {
- $eventId = $value->id;
- $eventData = json_encode($value);
- $sqlSel = "select * from events where event_id = $eventId";
- $result = $conn->query($sqlSel);
- // if (db_query("SELECT COUNT(*) FROM {events} WHERE id = :id", array(':id' => $eventId))->fetchField()) {
- // db_update('node') // Table name no longer needs {}
- // ->fields(array(
- // 'data' => $eventData,
- // ))
- // ->condition('event_id', $eventId, '=')
- // ->execute();
- // }
- // else {
- // $data = array(
- // 'data' => $eventData,
- // 'event_id' => $event_id,
- // 'created' => REQUEST_TIME,
- // );
- // drupal_write_record('node', $data);
- // }
- if ($result->num_rows > 0) {
- $sql = "UPDATE events set data = '$eventData' where event_id=$eventId";
- }
- else {
- $sql = "INSERT INTO events (data, event_id) VALUES ('$eventData', '$eventId')";
- }
- if ($conn->connect_error) {
- die("Connection failed: " . $conn->connect_error);
- }
- if ($conn->query($sql) === TRUE) {
- echo "New record created successfully";
- }
- else {
- echo "Error: " . $sql . "<br>" . $conn->error;
- }
- }
- }
- }
- seedEvents($mainMetaData, $conn);
- // $a = new stdClass();
- // $a->test = 'name';
- // $a->b = new stdClass();
- // $a->b->name = 'what';
- // $a->b->place = 'what';
- // $c = json_encode($a);
- // var_dump(json_decode($c));die();
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement