Visualizzazione risultati 1 fino 11 di 11

Discussione: [PHP] problema path

  1. #1
    Guest

    Predefinito [PHP] problema path

    ho un problema di path che non riesco a risolvere, vi spiego con un esempio:

    ho le seguenti dir e file:
    classi/Properties.php; (è una classe)
    test/prova.php
    index.php
    config.ini (file configurazione)

    in Properties.php ho una function che fa:
    class Properties
    {
    var $configFile = "config.ini";
    var $values = array();

    function Properties()
    {
    $this->values = parse_ini_file($this->configFile);
    }
    }

    se instanzio la classe Properties da index.php il prog funziona,
    se instanzio invece la classse da prova.php non funziona più perchè il php cerca config.ini non a partire dalla dir in cui si trova la classe Properties, ma dalla directory in cui instanzio la classe.

    Vorrei cercare di inserire un path che vada bene sempre, anche se trasferisco il sito su un altro server

    se ad esempio metto C:\\pathmiosito\config.ini funiona sempre ma sono vincolato a modificarlo nel caso in cui trasferisco il sito

    sapreste dirmi come rendere il tutto flessibile?

    Grazie

  2. #2
    L'avatar di Evcz
    Evcz non è connesso Utente storico
    Data registrazione
    31-05-2002
    Residenza
    Vicenza
    Messaggi
    5,670

    Predefinito

    come ti dicevo prima per la flessibilità esistono i path relativi... usati apposta per non incorrere nei limiti di quelli assoluti
    There are three kinds of people in this world: people who watch things happen ... people who complain about things that happen ... and people who make things happen...

  3. #3
    Guest

    Predefinito

    quindi come devo fare per renderlo flessibile? cioè da qualsiasi cartella instanzio properties funziona!!!

  4. #4
    Ospite Guest

    Predefinito

    uuhm

    bhe prova a fare : [non ti so dire quale delle due sia piu' corretta ma a me è sempre andato a tentativi ]

    var $configFile = "./config.ini";

    oppure

    var $configFile = "../config.ini";

    xiao!

  5. #5
    Guest

    Predefinito

    è la seconda corretta

  6. #6
    Ospite Guest

    Predefinito

    good

  7. #7
    Guest

    Predefinito non va

    se faccio ../ funziona solo se instanzio l'oggetto in index, in prova non va!!!!

  8. #8
    L'avatar di Evcz
    Evcz non è connesso Utente storico
    Data registrazione
    31-05-2002
    Residenza
    Vicenza
    Messaggi
    5,670

    Predefinito

    per risolvere in tranquillità puoi strutturare la classe in modo che ogni volta crei un istanza della classe specifichi anche il path che vuoi usare come base...
    There are three kinds of people in this world: people who watch things happen ... people who complain about things that happen ... and people who make things happen...

  9. #9
    Guest

    Predefinito

    ci ero arrivato ma non mi piace come soluzione

  10. #10
    L'avatar di Evcz
    Evcz non è connesso Utente storico
    Data registrazione
    31-05-2002
    Residenza
    Vicenza
    Messaggi
    5,670

    Predefinito

    Citazione Originalmente inviato da luketto
    ci ero arrivato ma non mi piace come soluzione
    se vuoi usare la classe in giro per mezzo mondo senza dirle dove si trova devi fare così....

    l'altra alternativa è specificare una costante dentro la classe dove viene definito la basedir da usare e che dovrai cambiare di server in server...

    una soluzione che a me piace è quella di usare una costante dentro la classe che verrà definita prima di ogni istanza...

    tipo

    define('_basepathclass_','/home/httpdocs/classi/');

    e sotto importi e ti crei la classe facendo:
    include _basepathclass_.'Properties.php';
    $prop = new Properties();

    ovviamente la classe deve riuscire ad importarsi la variabile che definisci fuori in modo da sapere dove andare "a cercarsi" :)
    Ultima modifica di Evcz : 08-08-2005 alle ore 21.17.43
    There are three kinds of people in this world: people who watch things happen ... people who complain about things that happen ... and people who make things happen...

  11. #11
    Guest

    Predefinito non ho capito

    Non ho capito

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •