[risolto] variabile php costituita da variabili testo

master1986

Utente Attivo
8 Ott 2012
234
0
16
ciao a tutti, non so se è possibile seguire quello che vorrei fare con php, vi pongo il mio quesito in merito

Io posseggo una variabile di questo tipo che è associata ad un valore:

$variabile_oggi_pomeriggio;


Praticamente quello che mi servirebbe è creare un array per modificare la parola oggi e pomeriggio, poichè queste due sono associate a due altre variabili che possono essere:

$oggi;
$domani;
$dopodomani; ecc

$pomeriggio;
$sera;
$notte;


Praticamente quello che mi serve sapere è se con php posso costruire una variabile determinata dall'unione di queste parole o variabili in modo che io possa variare l'array ed ottenere un risultato diverso.
 
Diciamo che le variabili oggi, domani, dopo domani possono essere racchiusi in una variabile esempio $giorni, mentre quella del pomeriggio,sera in $fasciaoraria

se dovessi costruire la stringa dovrei fare così

$variabile_($giorni)_($fasciaoraria);


Ma questo genera un errore poichè sono sicuro che sbaglio.


grazie a chi mi aiutera ;)
 
Forse non ho capito bene la domanda ma penso ti basti fare

Codice:
$variabile_oggi_pomeriggio=$oggi." ".$pomeriggio;

in caso contrario fai un esempio con dei dati fittizzi
 
Forse non ho capito bene la domanda ma penso ti basti fare

Codice:
$variabile_oggi_pomeriggio=$oggi." ".$pomeriggio;

in caso contrario fai un esempio con dei dati fittizzi



Purtroppo no, probabilmente non mi sono spiegato bene.

Io ho creato delle funzioni che poi vado a richiamare mediante la tecnica include con php


la variabile $variabile_oggi_pomeriggio viene generata dall'analisi di altri dati, quello che mi servirebbe a me è che nel file principale dovrei solo assegnare il nome a "oggi" e "pomeriggio" esempio:


$giorni==oggi

$fasciaoraria=sera



Una volta ottenute queste diciture dovrei avere (teoricamente questa stringa)

$variabile_($giorni)_($fasciaoraria);

tutto questo non mi serve per ottenere un echo ma per strutturare una variabile di questo tipo: $variabile_oggi_sera;


Io non so se è possibile come cosa, ma penso si possa fare?
 
ciao
se non ho capito male, prova così
PHP:
<?php
$giorni="oggi";
$fasciaoraria="sera";
${"variabile_".$giorni."_".$fasciaoraria}="pinco pallo";//variabile di variabile
var_dump(${"variabile_".$giorni."_".$fasciaoraria});
/*
output del vr_dump
string(11) "pinco pallo" 
*/
?>
 
ciao
se non ho capito male, prova così
PHP:
<?php
$giorni="oggi";
$fasciaoraria="sera";
${"variabile_".$giorni."_".$fasciaoraria}="pinco pallo";//variabile di variabile
var_dump(${"variabile_".$giorni."_".$fasciaoraria});
/*
output del vr_dump
string(11) "pinco pallo" 
*/
?>


Ciao borgo, cerco di spiegarmi meglio, io ho una serie di file, tra cui un file che ho chiamato funzioni.php dove ci sono scritte delle variabile che vengono derivate dall'analisi di dati, ad esempio:

$dato_oggi_mattina == Risultato dell'analisi di più dati presi da altre variabili

$dato_numero_2_oggi_mattina == Risultato dell'analisi di più dati presi da altre variabili

in questo file ci sono almeno 100 analisi di variabili da cui poi deve scaturire il dato finale, ecco perchè ho la necessità di creare questo sistema, poichè per analizzare 30 giorni ,dovrei cambiare la desinenza delle variabili per 4 periodi giornalieri dato che devo arrivare a 30 giorni :D, quindi il file diventerebbe lunghissimo e pesante.

mediante la tecnica include invece richiamando funzioni.php devo cercare di assegnare un nome alla desinenza, in modo da utilizzare solo una volta le funzioni.


Ora io ho il mio file index.php

inizio nel fare l'inclusione del file "funzioni.php"

Subito dopo devo assegnare la desinenza della mia variabile, esempio

$giorni= domani
$fasciaoraria= sera

e quindi costruire la variabile finita richiamando sempre però la funzione presente in "funzioni.php".

La cosa che penso sia necessaria è strutturar il file funzioni.php ossia


$dato_oggi_mattina == Risultato dell'analisi di più dati presi da altre variabili


probabilmente andrebbe scritto così:

$dato_($giorni)_($fasciaoriaria) == Risultato dell'analisi di più dati presi da altre variabili


Richiamandolo poi in index.php mediante la tecnica include devo solo costituire la variabile


la mia è un idea, io sinceramente non so se è possibile o sia impossibile. Chiedo scusa se non riesco a spiegarmi bene, ma la vedo difficile come cosa.


attendo una vostra soluzione (se esistente)


grazie ragazzi
 
Ciao, l'esempio di Borgo secondo me è corretto, forse ti ha confuso il vur_dump()
PHP:
<?php
$giorni = "domani";
$fasciaoraria = "sera";

${"dato" . "_" . $giorni . "_" . $fasciaoraria} = "quello che vuoi";

echo $dato_domani_sera;
?>
La "magia" la fanno le parentesi graffe { }
 
Ciao, l'esempio di Borgo secondo me è corretto, forse ti ha confuso il vur_dump()
PHP:
<?php
$giorni = "domani";
$fasciaoraria = "sera";

${"dato" . "_" . $giorni . "_" . $fasciaoraria} = "quello che vuoi";

echo $dato_domani_sera;
?>
La "magia" la fanno le parentesi graffe { }



ciao criric

io però nelle funzioni ho più parentesi, esempio

if(((($variabile1_oggi_mattina ==0) && ($variabile2>=0 && $variabile3<=10)

come mi comporto con le parentesi tonde? dato che ora devo modificarle con quielle graffe?
 
Ragazzi datemi una mano voi perchè non so come uscirmene, ecco la funzione che ho nel file funzioni.php


if((($variabile1_oggi_pomeriggio>=5 && $variabile_1_oggi_pomeriggio<=10) && ($variabile3_oggi_pomeriggio>=3.1) && ($variabile4_oggi_pomeriggio>=80.1))){($lamiavariabile='11');}


come vado a scrivere questa funzione integrando la funzione di borgo?, voglio comunque sottolineare che la definizione della variabile "giorno" e "fasciaoraria" deve avvenire su index.php successiva all'include di funzioni.php


datemi una mano voi a scriverla che sto impazzendo :evil:

grazie mielle
 
io non ho capito cosa devi fare cmq la sintassi corretta dell'ultimo pezzo di codice che hai postato è cosi
PHP:
<?php

if (
        $variabile1_oggi_pomeriggio >= 5 &&
        $variabile_1_oggi_pomeriggio <= 10 &&
        $variabile3_oggi_pomeriggio >= 3.1 &&
        $variabile4_oggi_pomeriggio >= 80.1
) {
    $lamiavariabile = '11';
}
?>
 
io non ho capito cosa devi fare cmq la sintassi corretta dell'ultimo pezzo di codice che hai postato è cosi
PHP:
<?php

if (
        $variabile1_oggi_pomeriggio >= 5 &&
        $variabile_1_oggi_pomeriggio <= 10 &&
        $variabile3_oggi_pomeriggio >= 3.1 &&
        $variabile4_oggi_pomeriggio >= 80.1
) {
    $lamiavariabile = '11';
}
?>

Ciao, queste sintassi stanno nel file "funzioni.php". tutto questo casino che sto facendo è fatto per evitare di dover ripetere la stessa funzione per 30 giorni, cioè cambiare "oggi_pomeriggio" per domani_pomeriggio, dopodomani_pomeriggio, 4_giorni ecc ecc


nel file funzioni.php ho solo questo tipo di variabile, devo richiamarla e assegnarle le ultime due parole nel file index.php attraverso delle variabili determinate.

L'esempio di borgoitalia funziona, ma come echo mi da Array



ho provato a fare così


$giorni = "oggi";
$fasciaoraria ="pomeriggio"

PHP:
if((($var1_oggi_pomeriggio>=0.2 && $var1_oggi_pomeriggio<=1) && ($var2_oggi_pomeriggio>=0.1 && $var2_oggi_pomeriggio<=80) && (${"var3" . "_" . $giorni . "_" . $fasciaoraria >=3}))){($variabile ='7');}


echo $variabile;

l'echo però mi da "Array"

dove sbaglio?
 
Ultima modifica di un moderatore:
ciao
intanto perche continui ad usare tutte quelle parentesi, poi hai chiuso la condizione dentro la graffa
PHP:
<?php
if(((
	$var1_oggi_pomeriggio>=0.2 && 
	$var1_oggi_pomeriggio<=1) && 
	$var2_oggi_pomeriggio>=0.1 &&
	$var2_oggi_pomeriggio<=80) &&
	${"var3" . "_" . $giorni . "_" . $fasciaoraria} >=3)
{
	$variabile ='7';
}
?>
poi, fai un esempio di quello che vorresti fare, perche forse ci sono metodi migliori da usare al posto delle variabili di variabile.
potrebbero essere array multipli molto più facilmente maneggiabili
 
ciao
intanto perche continui ad usare tutte quelle parentesi, poi hai chiuso la condizione dentro la graffa
PHP:
<?php
if(((
	$var1_oggi_pomeriggio>=0.2 && 
	$var1_oggi_pomeriggio<=1) && 
	$var2_oggi_pomeriggio>=0.1 &&
	$var2_oggi_pomeriggio<=80) &&
	${"var3" . "_" . $giorni . "_" . $fasciaoraria} >=3)
{
	$variabile ='7';
}
?>
poi, fai un esempio di quello che vorresti fare, perche forse ci sono metodi migliori da usare al posto delle variabili di variabile.
potrebbero essere array multipli molto più facilmente maneggiabili



Ti dovrebbero fare Santo :D:D:D:D:D:D:D:D, grandissimo Borgo funziona che è una meraviglia, era proprio che cercavo!!!!!!!!!!!!!!


Non so come ringraziarti :fonzie::fonzie::fonzie::fonzie::fonzie::fonzie:
 

Discussioni simili