Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 8
0.00% covered (danger)
0.00%
0 / 1
CRAP
0.00% covered (danger)
0.00%
0 / 1
RedisEnv
0.00% covered (danger)
0.00%
0 / 8
0.00% covered (danger)
0.00%
0 / 1
90
0.00% covered (danger)
0.00%
0 / 1
 string_value
0.00% covered (danger)
0.00%
0 / 8
0.00% covered (danger)
0.00%
0 / 1
90
1<?php
2
3namespace NewfoldLabs\WP\Module\Performance\Helpers;
4
5/**
6 * Helpers for reading Redis-related environment variables.
7 *
8 * Reads from getenv(), $_SERVER, or $_ENV (LiteSpeed / PHP-FPM often omit getenv()).
9 */
10final class RedisEnv {
11
12    /**
13     * Return a non-empty string for the given environment variable name, or an empty string.
14     *
15     * @param string $name Environment variable name, e.g. WP_REDIS_PASSWORD.
16     */
17    public static function string_value( string $name ): string {
18        $v = getenv( $name );
19        if ( is_string( $v ) && '' !== $v ) {
20            return $v;
21        }
22        if ( isset( $_SERVER[ $name ] ) && is_string( $_SERVER[ $name ] ) && '' !== $_SERVER[ $name ] ) {
23            return $_SERVER[ $name ];
24        }
25        if ( isset( $_ENV[ $name ] ) && is_string( $_ENV[ $name ] ) && '' !== $_ENV[ $name ] ) {
26            return $_ENV[ $name ];
27        }
28
29        return '';
30    }
31}