<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: Конфиги в формате PHP</title>
	<atom:link href="http://php.southpark.com.ua/2008/config-php/feed/" rel="self" type="application/rss+xml" />
	<link>http://php.southpark.com.ua/2008/config-php/</link>
	<description>Хитрости и секреты CakePHP</description>
	<pubDate>Fri, 21 Nov 2008 11:05:23 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.3</generator>
		<item>
		<title>By: mr.</title>
		<link>http://php.southpark.com.ua/2008/config-php/#comment-697</link>
		<dc:creator>mr.</dc:creator>
		<pubDate>Mon, 13 Oct 2008 21:41:17 +0000</pubDate>
		<guid isPermaLink="false">http://php.southpark.com.ua/?p=73#comment-697</guid>
		<description>У меня год назад было круче (4-й пункт): http://mrkto.com/php_config_files/</description>
		<content:encoded><![CDATA[<p>У меня год назад было круче (4-й пункт): <a href="http://mrkto.com/php_config_files/" rel="nofollow">http://mrkto.com/php_config_files/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: .scu</title>
		<link>http://php.southpark.com.ua/2008/config-php/#comment-669</link>
		<dc:creator>.scu</dc:creator>
		<pubDate>Mon, 18 Aug 2008 14:05:29 +0000</pubDate>
		<guid isPermaLink="false">http://php.southpark.com.ua/?p=73#comment-669</guid>
		<description>Вместо изобретения велосипеда, рекомендую использование встроенной в PHP функции parse_ini_file()

При этом любой пользователь сможет пользоваться конфигом и добавлять в него свои переменные, а сам конфиг будет выглядеть примерно так:

============config.ini====================

[database]
	db_host=localhost
	db_username=login
	db_password=pass
	db_database=base
	db_driver=mysql
	db_encoding=utf8
	sql_debug=on
[core]
	gzip_compress_level=0
[frontend]
	error_report_level=6143
[admin]
	error_report_level=0

============end of config.ini====================


P.S. если config.ini у вас размещается в публичной директории, не забудьте добавить в .htaccess:

	deny from all


т.к. apache по-умолчанию отображает *.ini файлы как текстовые.</description>
		<content:encoded><![CDATA[<p>Вместо изобретения велосипеда, рекомендую использование встроенной в PHP функции parse_ini_file()</p>
<p>При этом любой пользователь сможет пользоваться конфигом и добавлять в него свои переменные, а сам конфиг будет выглядеть примерно так:</p>
<p>============config.ini====================</p>
<p>[database]<br />
	db_host=localhost<br />
	db_username=login<br />
	db_password=pass<br />
	db_database=base<br />
	db_driver=mysql<br />
	db_encoding=utf8<br />
	sql_debug=on<br />
[core]<br />
	gzip_compress_level=0<br />
[frontend]<br />
	error_report_level=6143<br />
[admin]<br />
	error_report_level=0</p>
<p>============end of config.ini====================</p>
<p>P.S. если config.ini у вас размещается в публичной директории, не забудьте добавить в .htaccess:</p>
<p>	deny from all</p>
<p>т.к. apache по-умолчанию отображает *.ini файлы как текстовые.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: sergikon</title>
		<link>http://php.southpark.com.ua/2008/config-php/#comment-630</link>
		<dc:creator>sergikon</dc:creator>
		<pubDate>Thu, 10 Jul 2008 11:48:02 +0000</pubDate>
		<guid isPermaLink="false">http://php.southpark.com.ua/?p=73#comment-630</guid>
		<description>$temp вредит, т.к. одноименная переменная в конфиге ломает загрузку всего конфига, да и не нужна она вообще, по-моему.

&lt;code&gt;
	function loadConfig() {
		// load new vars
		include('config.php');

		// get list of new vars
		$vars = array_keys(get_defined_vars());

		// save new vars to $this-&#62;config
		$this-&#62;config = array();
		foreach ($vars as $var) {
			$this-&#62;config[$var] = $$var;
		}
	}
&lt;/code&gt;</description>
		<content:encoded><![CDATA[<p>$temp вредит, т.к. одноименная переменная в конфиге ломает загрузку всего конфига, да и не нужна она вообще, по-моему.</p>
<p><code><br />
	function loadConfig() {<br />
		// load new vars<br />
		include('config.php');</p>
<p>		// get list of new vars<br />
		$vars = array_keys(get_defined_vars());</p>
<p>		// save new vars to $this-&gt;config<br />
		$this-&gt;config = array();<br />
		foreach ($vars as $var) {<br />
			$this-&gt;config[$var] = $$var;<br />
		}<br />
	}<br />
</code></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Сергей</title>
		<link>http://php.southpark.com.ua/2008/config-php/#comment-629</link>
		<dc:creator>Сергей</dc:creator>
		<pubDate>Wed, 09 Jul 2008 17:36:33 +0000</pubDate>
		<guid isPermaLink="false">http://php.southpark.com.ua/?p=73#comment-629</guid>
		<description>Если в конфиге будет задана переменная $temp, то $vars окажется пустым и $this-&#62;config вслед за ним. Простой выход - переименовать $temp в $hrentakoevkonfigeuvidish</description>
		<content:encoded><![CDATA[<p>Если в конфиге будет задана переменная $temp, то $vars окажется пустым и $this-&gt;config вслед за ним. Простой выход - переименовать $temp в $hrentakoevkonfigeuvidish</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Нечаев Иван</title>
		<link>http://php.southpark.com.ua/2008/config-php/#comment-627</link>
		<dc:creator>Нечаев Иван</dc:creator>
		<pubDate>Mon, 07 Jul 2008 13:52:20 +0000</pubDate>
		<guid isPermaLink="false">http://php.southpark.com.ua/?p=73#comment-627</guid>
		<description>Ага это точно, ато иногда так объясняют что фиг разберёшся.</description>
		<content:encoded><![CDATA[<p>Ага это точно, ато иногда так объясняют что фиг разберёшся.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sniff</title>
		<link>http://php.southpark.com.ua/2008/config-php/#comment-618</link>
		<dc:creator>Sniff</dc:creator>
		<pubDate>Thu, 19 Jun 2008 16:35:56 +0000</pubDate>
		<guid isPermaLink="false">http://php.southpark.com.ua/?p=73#comment-618</guid>
		<description>Владимир, а как с вами можно связаться? Напишите мне в почту, например.</description>
		<content:encoded><![CDATA[<p>Владимир, а как с вами можно связаться? Напишите мне в почту, например.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Владимир Лучанинов</title>
		<link>http://php.southpark.com.ua/2008/config-php/#comment-616</link>
		<dc:creator>Владимир Лучанинов</dc:creator>
		<pubDate>Tue, 10 Jun 2008 18:01:49 +0000</pubDate>
		<guid isPermaLink="false">http://php.southpark.com.ua/?p=73#comment-616</guid>
		<description>В том то и суть. В моём примере они не попадают в глобальную область видимости.</description>
		<content:encoded><![CDATA[<p>В том то и суть. В моём примере они не попадают в глобальную область видимости.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Arefiev</title>
		<link>http://php.southpark.com.ua/2008/config-php/#comment-614</link>
		<dc:creator>Arefiev</dc:creator>
		<pubDate>Mon, 09 Jun 2008 22:50:15 +0000</pubDate>
		<guid isPermaLink="false">http://php.southpark.com.ua/?p=73#comment-614</guid>
		<description>по-хорошему переменные конфига потом надо удалять их глобальной области видимости, и проверять не затерли ли мы конфигами уже существующие переменные.</description>
		<content:encoded><![CDATA[<p>по-хорошему переменные конфига потом надо удалять их глобальной области видимости, и проверять не затерли ли мы конфигами уже существующие переменные.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Snowcore</title>
		<link>http://php.southpark.com.ua/2008/config-php/#comment-606</link>
		<dc:creator>Snowcore</dc:creator>
		<pubDate>Wed, 14 May 2008 08:33:44 +0000</pubDate>
		<guid isPermaLink="false">http://php.southpark.com.ua/?p=73#comment-606</guid>
		<description>Очень хороший подход. Мне понравилось!</description>
		<content:encoded><![CDATA[<p>Очень хороший подход. Мне понравилось!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Владимир Лучанинов</title>
		<link>http://php.southpark.com.ua/2008/config-php/#comment-602</link>
		<dc:creator>Владимир Лучанинов</dc:creator>
		<pubDate>Sat, 03 May 2008 10:52:34 +0000</pubDate>
		<guid isPermaLink="false">http://php.southpark.com.ua/?p=73#comment-602</guid>
		<description>Проблема в том, что они знают PHP, а не то, какие переменные сейчас используются в программе.
INI-файлы сильно простые, в них не запишешь даже элементарные расчёты вроде 60*60*24*30 или $otherVarFromConfig+15.
Zend_Config - это примерно то же, пожалуй, даже более безопасно, но писать в конфиге return array(...) просто как-то некрасиво. И, опять же, сложно сделать $var2 = $var1+15.</description>
		<content:encoded><![CDATA[<p>Проблема в том, что они знают PHP, а не то, какие переменные сейчас используются в программе.<br />
INI-файлы сильно простые, в них не запишешь даже элементарные расчёты вроде 60*60*24*30 или $otherVarFromConfig+15.<br />
Zend_Config - это примерно то же, пожалуй, даже более безопасно, но писать в конфиге return array(&#8230;) просто как-то некрасиво. И, опять же, сложно сделать $var2 = $var1+15.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
