我今天升级到 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);
所以我怀疑每当引号字段为空时,都会出现此警告。当字段为空时,有什么办法可以解决这个问题?