Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Welcome to the OneFileCMS wiki!
For the moment, see the readme for general information.
Question: Should external language files be .ini or .php file formats?
Objectives: Language strings must be able to contain any normal "text",
including the various quotes and other punctuation.
Consistancy of language file contents -vs- format/contents of Default_Language().
Ease of copy/paste from external language file to Default_Language() in onefilecms.php.
The default language settings are contained directly in onefilecms.php
Language files will rarely be modified.
Language files might be edited by non-programmers.
Users of OneFileCMS are neccessarily programmers.
ini pro: easier to read.
ini pro: Quotes not needed around values (but are generally recommended).
ini con: If quotes are not used around values, unexpected results can occurr if not careful.
(reserved words & special characters)
ini con: While simple and few, some values may be converted to different values on parse (on, boolean, etc).
ino con: The behavior of the prior point is inconsistant in different php versions.
ini con: Different escaping requirements between .ini & .php.
ini con: In php < 5.3, double quotes can not be in a value, escaped or not.
ini con: In php < 5.3, Single quotes around a value become part of the value.
In later versions, single quotes simply quote the value as expected.
ini con: In php < 5.3, parse_ini_string is not available, so additional code
that uses a temp file is needed to read Default_Language() values.
ini con: Can't simply copy & paste the contents of a langauge ini file into the
return value of Default_Langauge(), as singe quotes in values must be
escaped in _Default(), but not in the .ini file.
php pro: Can copy & paste directly between config.php or OneFileCMS.LANG.xx.php and
onefilecms.php, without any worry of format or version differences.
php pro: When using single quotes, no conversion or expansion of values.
php pro: More flexible- may use single or double quotes in all php versions.
php con: Using double quotes can have different results than using single quotes.
(However, this can also be a pro if needed)
php con: Slightly more difficult to read, due to the extra syntax.