Fatal error: Cannot use string offset as an array

Azi

Erfahrenes Mitglied
Wie irh vielleicht schon wisst, bin ich ein großer PHP-Anfänger. Dennoch versuche ich, ein Forum zu programmieren, doch leider kommt folgendes:

Code:
Fatal error: Cannot use string offset as an array in F:\Server\xampp\htdocs\eu_only\forum\lang\de.php on line 5

Die betroffene Zeile:

PHP:
$lang['install']['aquanabbinstall'] ='AquanaBB Installation';

Jetz bin ich überfragt :confused: ...
 
Ist das die erste Instanz der $lang-Variable? Wenn ja, solltest du sie explizit als Array auszeichnen, beispielweise:
PHP:
<?php

	$lang = array(
		'install' => array(
			'aquanabbinstall' => 'AquanaBB Installation',
			…
		),
		…
	);

?>
 
Hui, sowas hab ich noch nie gesehen... Ich glaub aber, ich habs schon verstanden ;-). Werd das mal morgen früh anwenden, jetzt muss ich leider schlafen :( ...
 
Nö, irgendwie hat das nicht ganz geklappt:

Code:
Warning: main(../lang/Array.php) [function.main]: failed to open stream: No such file or directory in F:\Server\xampp\htdocs\eu_only\forum\inc\langload.php on line 10

Die langload.php:
PHP:
<?php
    if(isset($_POST['langswitch']))
        {
            $_SESSION['lang']=$_POST['langswitch'];
        }
    elseif(!isset($_SESSION['lang']))
        {
            $_SESSION['lang']='de';
        }
    include('../lang/'.$_SESSION['lang'].'.php');
?>

langload.php wird ja includet, davor wird die Session gestartet.
 
Der Index "lang" in deiner Sessionvariable ist ein Array. Deswegen wird da eine Array.php gesucht, was aber sicherlich nicht deine datei ist, die du einfügen willst.
 
Im Array steht 'de'. Und ich möchte die de.php haben. /Edit: Vorher hats so geklappt! Ich weiß aber nicht mehr, welche Änderung ich gemacht hab...

/EDIT2: Hab gefunden, worans lag:
PHP:
<?php
    if(isset($_POST['langswitch']))
        {
            $_SESSION['lang']=$_POST['langswitch'];
        }
    elseif(!isset($_SESSION['lang']))
        {
            $_SESSION['lang']='de';
        }
    include('../lang/'.$_SESSION['lang'].'.php');
?>

Ich hab einfach $_SESSION['lang'] zu $_SESSION['language'] gemacht. Also werden wohl alle Variablen auch in den Sessions gespeichert, was ich nicht wusste. Danke an alle!
 
Zuletzt bearbeitet:
Hab meinen Beitrag editiert :) , in meiner de.php wird der Array lang['wasweißich']['ka'] angelegt.
 
Zurück