プロジェクト

全般

プロフィール

Bug(バグ) #1759

完了

occurs "warning" when second argument of the __() i18n translation method is non-array (i18nの翻訳メソッド__の第二引数に配列以外を渡した場合に warning が発生する)

Masato Nagasawa さんが約14年前に追加. 約9年前に更新.

ステータス:
Fixed(完了)
優先度:
Normal(通常)
担当者:
対象バージョン:
開始日:
2010-11-08
期日:
進捗率:

100%

予定工数:
3.6 で発生するか:
Yes
3.8 で発生するか:
Unknown (未調査)

説明

再現バージョン

  • OpenPNE3: OpenPNE3.6beta7-dev

概要

この現象は以下のURIにて確認可能です。

pc_frontend_dev.php/connection/new

opToolkit::retrieveAPIList() にて下記のように第二引数に null を指定している箇所がある。

if ($isWithI18n)
{
  $caption = $i18n->__($caption, null, 'api');
}

opI18N::__() の問題の箇所で foreach() をしているため warning となっている。

foreach ($args as $k => $v)
{
  if ($v instanceof SnsTerm)
  {
    $args[$k] = (string)$v;
  }
}

さらに return 時に array_merge を行っているため、この対応も必要である。

return parent::__($string, array_merge($this->parsed[$string], $args), $catalogue);

修正方針

第二引数が配列でない場合に foreach() を処理しないようにし、
同様に array_merge() も行わないように修正を行う。


関連するチケット 2 (0件未完了2件完了)

関連している OpenPNE 3 - Backport(バックポート) #1761: occurs "warning" when second argument of the __() i18n translation method is non-array (i18nの翻訳メソッド__の第二引数に配列以外を渡した場合に warning が発生する)Fixed(完了)Masato Nagasawa2010-11-08

操作
関連している OpenPNE 3 - Bug(バグ) #4168: opI18N::__() のパラメータに語形変化の設定をしたSnsTermインスタンスを渡しても反映されないFixed(完了)Youichi Kimura2017-02-27

操作

他の形式にエクスポート: Atom PDF