2016-05-04 13 views
0

PHPでの不正なオフセットの警告を修正しようとしています。不正なオフセット警告の修正

以下は、エラーが報告されているコードです。

foreach ($xml->{'nowplaying-info'} as $song) : 

foreach ($song->property as $property) : 

    foreach ($property->attributes() as $b => $a) : 

    switch ($a) : 
     case 'cue_title': 
      $name = 'title'; 
      break; 
     case 'track_artist_name': 
      $name = 'artist'; 
      break; 
     default: 
      $name = $a; 
    endswitch; 

    if ($name) : 
     $prop = strip_tags($property->asXML()); 
     if ($name === 'title' || $name === 'artist') : 
     $prop = ucwords(strtolower($prop)); 
     endif; 
     $property_output[$name] = $prop; 
    endif; 

    endforeach; 

endforeach; 

$property_output['time'] = strip_tags($song['timestamp'][0]); 
$song_data[] = $property_output; 

endforeach; 

この行を好きではないように思われる。

$property_output[$name] = $prop; 

は、この上の助けに感謝。

+0

switch文のcaseと一致しない場合、 '$ a'には何が入っていますか? – Ohgodwhy

+0

あなたのコードでは '$ property_output'が定義されていますか? –

答えて

0

$ aおそらくアレイまたはオブジェクトです。

からhttp://php.net/manual/en/language.types.array.php
配列とオブジェクトはキーとして使用できません。そうすると警告が表示されます:不正なオフセットタイプ。

関連する問題