PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Array-Fehlermeldung


Bootycall
11.06.2009, 15:41:07
... HI @ all

ich hoffe ihr könnt einen absoluten PHP-Newbie helfen. Folgender Code:

<?php foreach( $profile['fields']['Kurz Bio'] as $item ): ?>
<li class="info-title"><b><?php echo $item['name']; ?>:</b><span class="detail5"><?php if(!empty($item['searchLink'])) :?>
<a href="<?php echo $item['searchLink']; ?>"> </span>
<?php endif; ?>

<?php echo CProfileLibrary::getFieldData( $item['type'] , $item['value'] ); ?>

<?php if(!empty($item['searchLink'])) :?>
</a>
<?php endif; ?>
</li>
</ul>
<?php endforeach; ?>

folgende Fehlerquote:

Fatal error: Cannot use object of type stdClass as array in /xxxx/xxxx/templates/blackout/profile.header.php on line 103

line 103: <?php foreach( $profile['fields']['Kurz Bio'] as $item ): ?>

Kann mir vielleicht jemand auf die Sprünge helfen.

Greetz Booty

xabbuh
11.06.2009, 15:45:06
Laut der Fehlermeldung ist $profile['fields']['Kurz Bio'] ein Objekt und kein Array.

Bootycall
11.06.2009, 15:48:40
Laut der Fehlermeldung ist $profile['fields']['Kurz Bio'] ein Objekt und kein Array.
Danke, leider kann ich die Überschrift nicht mehr ändern.

An anderer Stelle, hab ich den Code schon zum laufen gebracht.

Aber an dieser Stelle komm ich einfach nicht weiter.

Mfg Booty

Indyk
11.06.2009, 15:51:52
Du kannst kein Object welches keine iteration unterstützt mit einer schleife durchlaufen. Hast du dir schonmal den inhalt von $profile['fields']['Kurz Bio'] ausgeben lassen?
z.B. mit

echo '<pre>'. print_r($profile['fields']['Kurz Bio'], TRUE). '</pre>';

xabbuh
11.06.2009, 15:52:09
Was möchtest du denn gerne hören? In deinem Arrayelement steht nun mal kein Array, weshalb du auch kein foreach nutzen kannst. Ohne deinen anderen Code zu kennen und beurteilen zu können, wo der Wert in diesem Element herkommt, kann dir hier auch niemand einen Tipp geben, was du stattdessen machen kannst.