[risolto] Alle prime armi con programmazioni ad Oggetti.....

franco1706

Nuovo Utente
15 Dic 2005
8
0
0
Sono alle prime armi con la programmazione ad oggetti. Ho delle difficoltà con l'utilizzo delle variabile che sono array.

Di solito utilizzavo gli array cosi:
$cc=array(10,20,30);

con echo "$cc[0]"; ottengo il valore 10

ma con non riesco a capire come funziona con gli oggetti
Esempio

class Prova
{
public $a=array(10,20,30);

......
}


$cc= new Prova();

echo " $cc->a[0]"; ottengo la scritta Array[0]


dove sbaglio???
Grazie
Franco
 
Scusatemi ma sono proprio uno stupido!!!
Avevo richiamato la classe in modo errato... usando l'esempio sopra è come se avessi chiamato
la classe Prova
con
$cc= new prova(); (in minuscolo)

Scusate se vi ho fatto perdere temo :angel:

grazie borgo italia!!
 
I nomi delle classi in PHP sono case-insensitive, ossia non fanno distinzione tra maiuscole e minuscole. Il problema era quello che ti ha segnalato borgo. Se scrivi
PHP:
<?php
class Test
{
    public $array = array('a', 'b', 'c');
}

$test = new Test();
E poi
PHP:
echo "$test->array[0]";
È come se scrivessi
PHP:
echo $test->array . '[0]';

Le due sintassi sono identiche per il parser. Un array, convertito in stringa, viene rappresentato come Array, dunque Array[0]. Per ovviare devi usare le graffe:

PHP:
echo "{$test->array[0]}";

Oppure togliere semplicemente le virgolette:

PHP:
echo $test->array[0];
 

Discussioni simili