Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc
Comunitatea PHP Romania
 

intrebare de curiozitate :)
Vezi mesajul original
Du-te la pagina Anterioară  1, 2
 
       Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc -> Cod PHP
Subiectul anterior :: Subiectul următor  
Autor Mesaj
saitek



Data înscrierii: 23/Sep/2007
Mesaje: 442

Trimis: Joi Apr 24, 2008 9:50 pm    Titlul subiectului:  

//LE
Acuma am inteles ce vrei sa faci, cred ca
Cod:
function cool(){
$res = fopen('myfile.txt','r');

while(!feof($res)){
    eval('$'.fgets($res, 1024).';');
}
fclose($res);
global $fruct;
global $culoare;
}

in fine nu l-am testat,dar logic ar trebuii sa mearga
Sus  
MihaiC



Data înscrierii: 14/Mai/2006
Mesaje: 1032
Locație: Navodari

Trimis: Joi Apr 24, 2008 10:41 pm    Titlul subiectului:  

Of...logica ma-sii
Cod:

function cool(){
$res = fopen('myfile.txt','r');

while(!feof($res)){
    eval('global $'.fgets($res, 1024).';');
    }
fclose($res);
}
Sus  
Quber



Data înscrierii: 27/Iun/2006
Mesaje: 799
Locație: localhost

Trimis: Joi Apr 24, 2008 10:49 pm    Titlul subiectului:  

@MihaiC, daca nu ma gresesc cum ai facut tu ai declarat o variabila dinafara functiei ca sa fie si in functie nu..?
Sus  
MihaiC



Data înscrierii: 14/Mai/2006
Mesaje: 1032
Locație: Navodari

Trimis: Vin Apr 25, 2008 12:15 am    Titlul subiectului:  

Mda..am facut o abureala totala :p
Cod:
<?
function cool(){
$res = fopen('myfile.txt','r');
while(!feof($res)){
   $x = fgets($res, 1024);
   $y = explode('=',$x);
    eval('global $'.trim($y[0]).';');
    eval('$'.$x.';');
    }
fclose($res);
}
cool();
echo 'Ana are '. $fruct .' '. $culoare;
?>
Sus  
Quber



Data înscrierii: 27/Iun/2006
Mesaje: 799
Locație: localhost

Trimis: Vin Apr 25, 2008 8:05 am    Titlul subiectului:  

@MihaiC eara ai facut ce nu trebuea..!

Cod:
<?
function cool(){
$res = fopen('myfile.txt','r');
while(!feof($res)){
   $x = fgets($res, 1024);
   $y = explode('=',$x);
    eval('$GLOBALS['.trim($y[0]).'];');
    eval('$'.$x.';');
    }
fclose($res);
}
cool();
echo 'Ana are '. $fruct .' '. $culoare;
?>
Sus  
mihaitha



Data înscrierii: 04/Mai/2007
Mesaje: 1600
Locație: Sibiu

Trimis: Vin Apr 25, 2008 8:32 am    Titlul subiectului:  

Quber, stim deja ca nu stii ortografia limbii romane, nu trebuie sa ne demonstrezi de fiecare data, dar chiar ca nu stii php n-am observat pana acum. Hai sa analizam:
Consideram in fisier linia 'fruct = mere'
Cod:
  $x = fgets($res, 1024); // => $x = "fruct = mere"
  $y = explode('=', $x); // => $y = array([0] => 'fruct ', [1] => ' mere')
  eval('$GLOBALS['.trim($y[0]).'];'); // evaluam linia $GLOBALS['fruct']; - imi spui si mie ce face linia asta? In afara de faptul ca probabil iti tranteste un notice?


Bottom line, ombladdon - varianta lui mihaiC e corecta. Inainte de a asigna valori variabilelor $fruct si $culoare, trebue apelata directiva global pentru fiecare din ele. Astfel variabila cu care lucreaza php-ul este variabila cu acel nume din scopul global, altfel ar fi creat o variabila locala, valabila numai in interiorul functiei, cu acel nume.
Sus  
carco



Data înscrierii: 27/Mai/2004
Mesaje: 2796
Locație: Bucuresti

Trimis: Sâm Apr 26, 2008 8:15 am    Titlul subiectului:  

Varianta "naspa"
Cod:
function cool($filename) {

     $vals = array();
     
     $data = file($filename);
     if(!$data) {
         return false;
     }
     foreach($lines as $line) {
       $line = trim($line);
       if(!$line || $line{0} == '#' || !strpos($line,'=')) continue;
       list($var,$val) = explode('=',$line);
       $vals[trim($var)] = trim($val);
     }
     return $vals;
}
$vars = cool('myfile.txt');
if(!$vars) {
   //...No vars found
} else {
    echo 'Ana are ',$vars['fruct']....
   //sau, nerecomandat
   extract($vars);
    echo 'Ana are ',$fruct, ...
}
echo 'Ana are '. $fruct .' '. $culoare;



Varianta "normala": ai grija ca fisierul sa fie in "format ini" si folosesti
Cod:
$vars = parse_ini_file("myfile.txt");
//folosesti $vars['fruct'] sau, daca tii neaparat,
extract($vars);
//folosesti direct $fruct;


http://www.php.net/manual/en/function.parse-ini-file.php
http://www.php.net/extract
Sus  
Ombladon1991



Data înscrierii: 11/Feb/2008
Mesaje: 40

Trimis: Lun Apr 28, 2008 8:52 pm    Titlul subiectului:  

lol ms mult si paste fericit xD

ceea ce doream era ca in myfile.txt sa pot sa scriu cate vars vreau si doar sa pun
cool() inainte la $var1 . "bla bla bla" . $var 2;
un fel de config file sa fie myfile.txt xD

ms mult de exemple xD
Sus  
Ombladon1991



Data înscrierii: 11/Feb/2008
Mesaje: 40

Trimis: Lun Apr 28, 2008 10:55 pm    Titlul subiectului:  

scz ded stupiditatea mea dar am cv probleme :\

1 la mana am incercat tot ce ii deasupra si nu merg....am cv d genu in myfile.txt:

[code]
#============================================#
# #
# RiseToPower - site Config #
# #
#============================================#
#
# Site title/name
title = RiseToPower
#template configuration:
#template in use:
template = default

#extension in use:
extension = htm[code]
si codul din functie:
[code]
function config($type)
{
$res = fopen('config/' . stripslashes($type) . '.txt','r');
while(!feof($res)){
$x = fgets($res, 1024);
$y = explode('=',$x);
eval('global $'.trim($y[0]).';');
eval('$'.$x.';');
}
fclose($res);
}
[/code]
dar imi da o gramada de errori si nu proceseaza variabilele bolduite de mai sus :(
Sus  
Ombladon1991



Data înscrierii: 11/Feb/2008
Mesaje: 40

Trimis: Mar Apr 29, 2008 11:56 am    Titlul subiectului:  

ok mi se pare mai simplu cu ini....si am incercat mai sus dar nu merge deloc :( ma ajuta cineva?????
Sus  
Ombladon1991



Data înscrierii: 11/Feb/2008
Mesaje: 40

Trimis: Mar Apr 29, 2008 7:49 pm    Titlul subiectului:  

<bump>
Sus  
carco



Data înscrierii: 27/Mai/2004
Mesaje: 2796
Locație: Bucuresti

Trimis: Mie Apr 30, 2008 5:45 am    Titlul subiectului:  

Banuiesc ca nu ai citit ce scrie la parse_ini_file (ai link mai sus)...
Cod:
;============================================
;
; RiseToPower - site Config
;
;============================================
;
;Site title/name
title = RiseToPower
;template configuration:
;template in use:
template = default

;extension in use:
extension = htm


<?php $vars = parse_ini_file('mycode.txt'); if(!$vars) {   die('Wrong ini file'); } //acum ai totul vars  //echo $vars['title']... extract($vars); echo 'Title: ',$title,', Template: ',$template,', extension: ',$extension; ?>
Sus  
PHPRomania Bot
Bot Member


Data înscrierii: 27/Dec/2007
Mesaje: 1
Locaţie: Server Google
Trimis: Mie Dec 26, 2007 7:01 pm   Titlul subiectului: Ad  

Sus  
 
       Pagina de start a forumului Forum PHP Romania - Discutii despre PHP, MySQL, Javascript, AJAX, etc -> Cod PHP Du-te la pagina Anterioară  1, 2
Pagina 2 din 2


Powered by phpBB 2.0.22 © 2001, 2002 phpBB Group
Varianta în limba română: Romanian phpBB online community