2017 © Pedro Peláez
 

library properties-ini

Getting and setting configuration values in ini (or java .properties) files

image

mayoturis/properties-ini

Getting and setting configuration values in ini (or java .properties) files

  • Thursday, January 28, 2016
  • by mayoturis
  • Repository
  • 1 Watchers
  • 1 Stars
  • 2,070 Installations
  • PHP
  • 1 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 2 Versions
  • 12 % Grown

The README.md

PHP configuration writer and reader

Allows to get and set configuration variables stored in ini-like (or java .properties) files, (*1)

Installation with composer

composer require mayoturis/properties-ini, (*2)

or, (*3)

{
    "require": {
        "mayoturis/properties-ini": "1.0"
    }
}

Usage

Basic Example

$config = Mayoturis\Properties\RepositoryFactory::make('path_to_configuration_file');
$config->get('DB_PASSWORD');
$config->set('DB_STRICT_MODE', true);

File format

Reader can load these types of lines, (*4)

DB_HOST=localhost           // loaded as string 'localhost'
DB_USERNAME="user"          // string 'user'
DB_PASSWORD = 'password'    // string 'password'
DB_STRICT_MODE=true         // boolean true

FLOAT_VALUE=1.1             // float 1.1
INT_VALUE=1                 // int 1
NULL_VALUE=null             // null

# comment                   // won't be loaded
; comment                   // won't be loaded
//comment                   // won't be loaded

Comment has to be at the start of the line, (*5)

Example of file loading

name="John"
surname=Doe
age=25
salary=12.5
married=false
wife=null

Will be loaded as, (*6)

[
  "name"    => "John",
  "surname" => "Doe",
  "age"     => 25,
  "salary"  => 12.5
  "married" => false,
  "wife"    => null
]

Saving configuration

When saving the configuration, file format will be respected. Therefore empty lines and comments will preserved. New values (NOT only changed) will be placed at the end of the file, (*7)

Further examples

Get all configuration values
$config = Mayoturis\Properties\RepositoryFactory::make('path_to_configuration_file');
$configurationArray = $config->all();
Setting value
// file .env

name=John
surname="Doe"

# In 2015
age=25
// file index.php

$config = Mayoturis\Properties\RepositoryFactory::make(__DIR__ . '/.env');
$config->set('name', 'Johny');
$config->set('age', 35);
// file .env after

name=Johny
surname="Doe"

# In 2015
age=35
Save all configuration values
$configArray = [
  "username" => "user",
  "password" => "password"
];

$config = Mayoturis\Properties\RepositoryFactory::make('path_to_configuration_file');
$config->setAll($configArray);

Notice: setAll function will override all configuration values. Previous values will be lost., (*8)

The Versions

28/01 2016

dev-master

9999999-dev

Getting and setting configuration values in ini (or java .properties) files

  Sources   Download

MIT

The Requires

  • php >=5.4.0

 

The Development Requires

by Marek Turis

php configuration ini config properties .properties

16/11 2015

1.0

1.0.0.0

Getting and setting configuration values in ini (or java .properties) files

  Sources   Download

MIT

The Requires

  • php >=5.4.0

 

The Development Requires

by Marek Turis

php configuration ini config properties .properties