今日、PHP 5.4 にアップグレードしましたが、奇妙な警告がいくつか表示されます。
Warning: Illegal string offset 'quote1' in file.php on line 110
Warning: Illegal string offset 'quote1_title' in file.php on line 111
これらの行は、コードのこの部分です。
for($i = 0; $i < 3; $i++) {
$tmp_url = $meta['quote'. ($i+1)];
$tmp_title = $meta['quote' . ($i+1) .'_title'];
if(!empty($tmp_url) || !empty($tmp_title)) {
$quotes[$src_cnt] = array();
$quotes[$src_cnt]['url'] = $tmp_url;
$quotes[$src_cnt]['title'] = $tmp_title;
$src_cnt++;
}
}
だから$tmp_url
と$tmp_title
行。
この奇妙な警告が表示されるのはなぜですか? 解決策は何ですか?
更新:
このコードは、Wordpress プラグインとして使用されています。$meta には以下が含まれます:
$meta = get_post_meta($post->ID,'_quote_source',TRUE);
したがって、引用符フィールドが空の場合は常にこの警告が表示されると思われます。フィールドが空の場合にこれを修正できる方法はありますか?