Skip to content

Commit 833f8d4

Browse files
authored
feat(php): change environment variables loading in the playground (#691)
1 parent a4fc3a0 commit 833f8d4

File tree

9 files changed

+38
-23
lines changed

9 files changed

+38
-23
lines changed

playground/php/loadEnv.php

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
<?php
2+
require '../../../clients/algoliasearch-client-php/vendor/autoload.php';
3+
4+
// Gets the vars from local environment
5+
$env = getenv();
6+
7+
// If the script has been run from docker's playground, fetches the vars from .env file instead
8+
if (isset($env['DOCKER']) && $env['DOCKER'] === "true") {
9+
$dotenv = Dotenv\Dotenv::createImmutable('../..');
10+
$dotenv->load();
11+
$env = $_ENV;
12+
}
13+
14+
return $env;

playground/php/src/abtesting.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
<?php
22

3-
require '../../../clients/algoliasearch-client-php/vendor/autoload.php';
3+
$env = require_once('../loadEnv.php');
44

55
use Algolia\AlgoliaSearch\Api\AbtestingClient;
66

7-
$client = AbtestingClient::create(getenv('ALGOLIA_APPLICATION_ID'), getenv('ALGOLIA_ANALYTICS_KEY'));
7+
$client = AbtestingClient::create($env['ALGOLIA_APPLICATION_ID'], $env['ALGOLIA_ANALYTICS_KEY']);
88

99
$abTest = [
1010
'name' => 'testing',

playground/php/src/analytics.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
<?php
22

3-
require '../../../clients/algoliasearch-client-php/vendor/autoload.php';
3+
$env = require_once('../loadEnv.php');
44

55
use Algolia\AlgoliaSearch\Api\AnalyticsClient;
66

7-
$client = AnalyticsClient::create(getenv('ALGOLIA_APPLICATION_ID'), getenv('ALGOLIA_ANALYTICS_KEY'));
8-
$indexName = getenv('ANALYTICS_INDEX');
7+
$client = AnalyticsClient::create($env['ALGOLIA_APPLICATION_ID'], $env['ALGOLIA_ANALYTICS_KEY']);
8+
$indexName = $env['ANALYTICS_INDEX'];
99

1010
var_dump(
1111
$client->getTopFilterForAttribute(

playground/php/src/insights.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
<?php
22

3-
require '../../../clients/algoliasearch-client-php/vendor/autoload.php';
3+
$env = require_once('../loadEnv.php');
44

55
use Algolia\AlgoliaSearch\Api\InsightsClient;
66

7-
$client = InsightsClient::create(getenv('ALGOLIA_APPLICATION_ID'), getenv('ALGOLIA_ADMIN_KEY'));
8-
$indexName = getenv('SEARCH_INDEX');
7+
$client = InsightsClient::create($env['ALGOLIA_APPLICATION_ID'], $env['ALGOLIA_ADMIN_KEY']);
8+
$indexName = $env['SEARCH_INDEX'];
99

1010
$twoDaysAgoMs = (time() - (2 * 24 * 60 * 60)) * 1000;
1111

playground/php/src/personalization.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
<?php
22

3-
require '../../../clients/algoliasearch-client-php/vendor/autoload.php';
3+
$env = require_once('../loadEnv.php');
44

55
use Algolia\AlgoliaSearch\Api\PersonalizationClient;
66

7-
$client = PersonalizationClient::create(getenv('ALGOLIA_APPLICATION_ID'), getenv('ALGOLIA_RECOMMENDATION_KEY'));
7+
$client = PersonalizationClient::create($env['ALGOLIA_APPLICATION_ID'], $env['ALGOLIA_RECOMMENDATION_KEY']);
88

99
var_dump(
1010
$client->deleteUserProfile('userToken')
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
<?php
22

3-
require '../../../clients/algoliasearch-client-php/vendor/autoload.php';
3+
$env = require_once('../loadEnv.php');
44

55
use Algolia\AlgoliaSearch\Api\QuerySuggestionsClient;
66

7-
$client = QuerySuggestionsClient::create(getenv('ALGOLIA_APPLICATION_ID'), getenv('QUERY_SUGGESTIONS_KEY'));
7+
$client = QuerySuggestionsClient::create($env['ALGOLIA_APPLICATION_ID'], $env['QUERY_SUGGESTIONS_KEY']);
88

99
var_dump($client->getAllConfigs());

playground/php/src/recommend.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
<?php
22

3-
require '../../../clients/algoliasearch-client-php/vendor/autoload.php';
3+
$env = require_once('../loadEnv.php');
44

55
use Algolia\AlgoliaSearch\Api\RecommendClient;
66

7-
$client = RecommendClient::create(getenv('ALGOLIA_APPLICATION_ID'), getenv('ALGOLIA_ADMIN_KEY'));
8-
$indexName = getenv('SEARCH_INDEX');
9-
$query = getenv('SEARCH_QUERY');
7+
$client = RecommendClient::create($env['ALGOLIA_APPLICATION_ID'], $env['ALGOLIA_ADMIN_KEY']);
8+
$indexName = $env['SEARCH_INDEX'];
9+
$query = $env['SEARCH_QUERY'];
1010

1111
var_dump($client->getRecommendations(
1212
[

playground/php/src/search.php

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,19 @@
11
<?php
22

3-
require '../../../clients/algoliasearch-client-php/vendor/autoload.php';
3+
$env = require_once('../loadEnv.php');
44

55
use Algolia\AlgoliaSearch\Api\SearchClient;
66

77
$client = SearchClient::create(
8-
getenv('ALGOLIA_APPLICATION_ID'),
9-
getenv('ALGOLIA_ADMIN_KEY')
8+
$env['ALGOLIA_APPLICATION_ID'],
9+
$env['ALGOLIA_ADMIN_KEY']
1010
);
11-
$indexName = getenv('SEARCH_INDEX');
11+
$indexName = $env['SEARCH_INDEX'];
1212

1313

1414
$response = $client->saveObject(
1515
$indexName,
16-
['objectID' => "111", 'name' => getenv('SEARCH_QUERY')],
16+
['objectID' => "111", 'name' => $env['SEARCH_QUERY']],
1717
);
1818

1919
var_dump($response);
@@ -23,7 +23,7 @@
2323
var_dump(
2424
$client->search([
2525
'requests' => [
26-
['indexName' => $indexName, 'query' => getenv('SEARCH_QUERY')],
26+
['indexName' => $indexName, 'query' => $env['SEARCH_QUERY']],
2727
],
2828
])
2929
);

templates/php/composer.mustache

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,8 @@
3636
},
3737
"require-dev": {
3838
"friendsofphp/php-cs-fixer": "^3.5.0",
39-
"phpunit/phpunit": "^9.3"
39+
"phpunit/phpunit": "^9.3",
40+
"vlucas/phpdotenv": "^5.4"
4041
},
4142
"autoload": {
4243
"psr-4": { "{{escapedInvokerPackage}}\\" : "{{srcBasePath}}/" },

0 commit comments

Comments
 (0)