W3cubDocs

/CakePHP 4.1

Class JsonConfig

JSON engine allows Configure to load configuration values from files containing JSON strings.

An example JSON file would look like::

{
    "debug": false,
    "App": {
        "namespace": "MyApp"
    },
    "Security": {
        "salt": "its-secret"
    }
}

Properties summary

  • $_extension protected
    string

    File extension.

  • $_path protected
    string

    The path this engine finds files on.

Method Summary

  • __construct() public

    Constructor for JSON Config file reading.

  • _getFilePath() protected

    Get file path

  • dump() public

    Converts the provided $data into a JSON string that can be used saved into a file and loaded later.

  • read() public

    Read a config file and return its contents.

Method Detail

__construct() public

__construct(?string $path)

Constructor for JSON Config file reading.

Parameters

string|null $path optional

The path to read config files from. Defaults to CONFIG.

_getFilePath() protected

_getFilePath(string $key, bool $checkExists)

Get file path

Parameters

string $key

The identifier to write to. If the key has a . it will be treated as a plugin prefix.

bool $checkExists optional

Whether to check if file exists. Defaults to false.

Returns

string

Full file path

Throws

Cake\Core\Exception\Exception
When files don't exist or when files contain '..' as this could lead to abusive reads.

dump() public

dump(string $key, array $data)

Converts the provided $data into a JSON string that can be used saved into a file and loaded later.

Parameters

string $key

The identifier to write to. If the key has a . it will be treated as a plugin prefix.

array $data

Data to dump.

Returns

bool

Success

read() public

read(string $key)

Read a config file and return its contents.

Files with . in the name will be treated as values in plugins. Instead of reading from the initialized path, plugin keys will be located using Plugin::path().

Parameters

string $key

The identifier to read from. If the key has a . it will be treated as a plugin prefix.

Returns

array

Parsed configuration values.

Throws

Cake\Core\Exception\Exception
When files don't exist or when files contain '..' (as this could lead to abusive reads) or when there is an error parsing the JSON string.

Property Detail

$_extension protected

File extension.

Type

string

$_path protected

The path this engine finds files on.

Type

string

© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.1/class-Cake.Core.Configure.Engine.JsonConfig.html