problema con codice php...

  • Creatore Discussione Creatore Discussione pollat
  • Data di inizio Data di inizio

pollat

Utente Attivo
10 Ott 2013
63
0
6
Ho questo codice che non prende la variabile che inserisco all'inizio, cosa c'è che non va e come faccio a fargli prendere la variabile nei due nomi di url sotto?
Codice:
<?php

  // nome della variabile
  $nomecartella=foto-mare;

class Elenco {

  private static $root =  '../../documenti/$nomecartella/';

  public static $config = array(
         'paths' => array(
           'url'   => '../../documenti/$nomecartella/',
         ),
   );
}

?>
 
Ultima modifica:
provo a pubblicare l'intero codice così forse è più chiaro:

Codice:
<?php


// nome della cartella associata
$nomecartella=foto-mare;




# Elenco è una classe statica ed auto-contenuta, che elenca i file
# presenti in una directory, applicando loro una serie di regole per
# assegnare tipi o nascondere file.




define ('ELENCO_VERSION', '0.3');


// -- Inizializzazione e classe --
// error_reporting(E_ALL | E_STRICT); // mostra tutti gli errori
Elenco::auto();
class Elenco {
  // $root è la directory da cui EN comincia a visualizzare file
  // E' possibile scendere in sottodirectory, ma non risalire oltre
  // la directory $root; il default è la directory corrente
  
  
  private static $root   = '../../dcumenti/$nomecartella';
  




  // $path è la sottodirectory di $root da visualizzare
  private static $path   = '';


  // $here è la directory in cui si trovano gli altri file di EN
  // (icone, template, configurazione)
  // La directory di default è elenco/, ma viene inizializzata
  // automaticamente chiamando ::init()
  private static $here   = '';


  // $files è l'array che contiente l'elenco dei file, una volta
  // riempita da ::listFiles()
  public static $files  = array();


  // $totals mantiene i totali relativi all'elenco dei file
  public static $totals = array(
       'directories' => 0,
       'files'       => 0,
       'bytes'       => 0,
      );


  // array di configurazione, per i singoli valori vedere default.ini
  public static $config = array(


   'options' => array(
     'directories-show'     => true,
     'directories-first'    => true,
     'directory-up'         => true,
     'sort-by'              => false,
     'sort-reverse'         => false,
     'template'             => 'mobile'
   ),


   'paths' => array(
     'files'                => '',
     'url'                  => '../../documenti/$nomecartella/',
     'icons'                => '../icons/',
     'get-param'            => 'path',
   ),
  );
 
}
   ?>



Il problema come detto sopra è che non prende le variabili "$nomecartella"di linea 23 e 61.
 
forse il codice che hai postato non è l'originale, limitato alla definizione delle variabili,
mancano le funzioni che probabilmente gestiscono "$nomecartella", esempio auto e init
 
Sezione sbagliata, sposto la discussione in php.
non credo che una variabile si possa vedere all'interno di una classe, prova ad usare una costante.
 
Sezione sbagliata, sposto la discussione in php.
non credo che una variabile si possa vedere all'interno di una classe, prova ad usare una costante.

Infatti quello che chiedevo è un metodo alternativo per far vedere la variabile dentro la classe
 
metti
global $nomecartella;
all'inizio della classe e in ogni funzione della classe stessa che la usa
ma ....
 
con "global" funziona sicuramente,
se non ti va bene quest'ultima soluzione, come ho detto in precedenza, hai postato solo le variabili della classe, non l'intero codice
per cui non è possibile suggerire nulla che sia in linea con lo script che stai usando,
criric ti ha suggerito di usare una costante
??? non saprei che altro suggerire ...
ciao
 

Discussioni simili