Bug(バグ) #3199
OpenPNE.yml.sample に記述されているデフォルトの設定が OpenPNE.yml に記述されているものと正しくマージできていない
Start date:
2012-09-11
Due date:
% Done:
0%
3.6 で発生するか:
Unknown (未調査)
3.8 で発生するか:
Unknown (未調査)
Description
Overview (現象)¶
opProjectConfiguration::setOpenPNEConfiguration() メソッドにて、
$path = OPENPNE3_CONFIG_DIR.'/OpenPNE.yml';
$config = sfYaml::load($path.'.sample');
if (is_readable($path))
{
$config = array_merge($config, sfYaml::load($path));
}
のように OpenPNE.yml.sample の設定を OpenPNE.yml とマージする箇所があるが、array_merge 関数を使用しているため多次元配列である OpenPNE.yml 内の設定を正しくマージできていない。結果として OpenPNE.yml.sample はデフォルト設定値として機能できていない。
Way to fix (修正内容)¶
array_merge の代わりに array_replace_recursive 関数を使用する。 (PHP5.3以前で使用不可)
sfToolkit::arrayDeepMerge()
メソッドを使用する。
Related issues
Associated revisions
use sfToolkit::arrayDeepMerge() instead of array_merge() for merging default values of OpenPNE.yml (fixes #3199)
History
#1
Updated by Youichi Kimura about 11 years ago
- Description updated (diff)
#2
Updated by Youichi Kimura about 11 years ago
- Description updated (diff)
#3
Updated by Kousuke Ebihara about 11 years ago
sfToolkit::arrayDeepMerge()
を使用するアプローチはどうでしょう
#4
Updated by Youichi Kimura about 11 years ago
- Description updated (diff)
- Status changed from New(新規) to Accepted(着手)
arrayDeepMerge で修正できそうです。助言ありがとうございます。
#5
Updated by Youichi Kimura about 11 years ago
- Status changed from Accepted(着手) to Pending Review(レビュー待ち)
- % Done changed from 0 to 50
更新履歴 983159a06192cb455594be60a97318051ae7a57c で適用されました。
#7
Updated by isao sano over 6 years ago
- Status changed from Pending Review(レビュー待ち) to Won't fix(対応せず)
- % Done changed from 50 to 0
OpenPNE 3.8.2 にて対応済みであったため、対応せずとします。