Salve a tutti,
mi sto dedicando a PHP da poco tempo, e c'è una cosa che mi lascia perplesso.
in una classe, nel metodo __construct() si possono chiamare altre funzioni di quella classe?
Mi spiego meglio con un semplice esempio:
la mia classe è:
Codice PHP:
class statistico
    
{
        public 
$voti;
        public 
$stri;
        
        function 
__construct($stringa)
        {
            
$this->stri $stringa;
            
$this->voti trasforma_stringa($stringa);
            
        }
         
        
        function 
get_array($i)
        {
            return 
$this->voti[$i];
        }
        
        
        function 
trasforma_stringa($st)
        {
            
$arr preg_split("/[\s,]+/"$st);
            return 
$arr;
        }

se poi, fuori dalla classe, invoco:
Codice PHP:
$a = new statistico($_POST['voti']);
echo 
$a->get_array(1); 
non mi restituisce niente.

invece con il seguente codice funziona, come mai? io vorrei che trasforma_stringa avvenisse al momento dell'istanziazione
Codice PHP:
class statistico
    
{
        public 
$stri;
        
        function 
__construct($stringa)
        {
            
$this->stri $stringa;            
        }
         
        function 
get_array2($arr$i)
        {
            return 
$arr[$i];
        }
        
        function 
trasforma_stringa($st)
        {
            
$arr preg_split("/[\s,]+/"$st);
            return 
$arr;
        }
        
}
    
    
$a = new statistico($_POST['voti']);
    
$ray $a->trasforma_stringa($_POST['voti']);
    echo 
$a->get_array2($ray1);