|
- <?php
-
- // Generate a random number for sorting by random
- $random = rand();
-
- // Assemble a query string to send to Solr. This uses the Solr hostname from config.env. Solr's query syntax can be found at many sites including https://lucene.apache.org/solr/guide/6_6/the-standard-query-parser.html
- // This query retrieves only the bib identifier field for records which satisfy the search query
- $solrurl = 'http://host.docker.internal:8983/solr/epo_data/select?q.op=OR&q=*%3A*&wt=json&sort=random_' . $random . '%20asc';
-
- // Perform Curl request on the Solr API
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_URL, $solrurl);
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
- curl_setopt($ch, CURLOPT_HEADER, FALSE);
- curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
- $response = curl_exec($ch);
- curl_close($ch);
-
- // Turn the API response into useful Json
- $json = json_decode($response);
-
- // Pick a random key out of the docs array
- $random = array_rand($json->response->docs);
-
- ?>
-
- Application ID:
-
- <?php
-
- // Search for the title in the content element and display it
- $content = $json->response->docs[$random]->content;
- preg_match('/Application.*\n(.*)\n/', $content, $application_id);
- print_r($application_id[1]);
-
- ?>
-
- <br><br>
-
- EPO publication:
-
- <?php
-
- // Search for the title in the content element and display it
- $content = $json->response->docs[$random]->content;
- preg_match('/Publication.*\n(.*)\n/', $content, $publication);
- print_r($publication[1]);
-
- ?>
-
- <br><br>
-
- Title:
-
- <?php
-
- // Search for the title in the content element and display it
- $content = $json->response->docs[$random]->content;
- preg_match('/Title.*\n(.*)\n/', $content, $title);
- print_r($title[1]);
-
- ?>
-
- <br><br>
-
- Abstract:
-
- <?php
-
- // Search for the title in the content element and display it
- $content = $json->response->docs[$random]->content;
- preg_match('/Abstract.*\n(.*)\n/', $content, $abstract);
- print_r($abstract[1]);
-
- ?>
|