Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Tablice
Gibcio2008
post 1.02.2019, 11:03:34
Post #1





Grupa: Zarejestrowani
Postów: 54
Pomógł: 0
Dołączył: 26.10.2008

Ostrzeżenie: (0%)
-----


Witam !
Borykam się z problemem tablic, a mianowicie:

PIERWSZY PLIK: config.php i jego zawartość
  1. <?php
  2. $config['a'] = 'a';
  3. ?>


DRUGI PLIK: db.php i jego zawartość
  1. <?php
  2. $db['a'] = 'a';
  3. ?>


Dołączanie jest proste:

  1. <?php
  2. function Load($file_name)
  3. {
  4. if(file_exists('config/'.$file_name.'.php'))
  5. {
  6. include 'config/'.$file_name.'.php';
  7. }
  8. }
  9. ?>


teraz chciałbym wyświetlić z pliku config.php lub z pliku db.php a ale nie znając nazwy tablicy ?

Ten post edytował Gibcio2008 1.02.2019, 11:04:02
Go to the top of the page
+Quote Post
nospor
post 1.02.2019, 11:52:20
Post #2





Grupa: Moderatorzy
Postów: 36 447
Pomógł: 6292
Dołączył: 27.12.2004




Pliki includowane moga zwracac wartosci, podobnie jak funkcje przez return

Przyklad #5
http://php.net/manual/pl/function.include.php


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Gibcio2008
post 1.02.2019, 15:30:00
Post #3





Grupa: Zarejestrowani
Postów: 54
Pomógł: 0
Dołączył: 26.10.2008

Ostrzeżenie: (0%)
-----


Wszystko w porządku jeśli wiemy, że
  1. <?php
  2. echo $config['a'];
  3. ?>


wyświetli "a"

ale jak wyświetlić tą wartość a jeśli nie znamy nazwy tablicy ?
Go to the top of the page
+Quote Post
nospor
post 1.02.2019, 15:33:56
Post #4





Grupa: Moderatorzy
Postów: 36 447
Pomógł: 6292
Dołączył: 27.12.2004




No przeciez ci podalem rozwiazanie w moim pierwszym poscie. Zastosowales? Jesli nadal twierdzisz ze nie dziala to pokaz kod po zmianach


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Gibcio2008
post 1.02.2019, 15:48:24
Post #5





Grupa: Zarejestrowani
Postów: 54
Pomógł: 0
Dołączył: 26.10.2008

Ostrzeżenie: (0%)
-----


Plik config.php
  1. <?php
  2. $config['a'] = "A";
  3. ?>


Plik db.php
  1. <?php
  2. $data['a'] = "A";
  3. ?>


Funkcja która inluduje plik:
  1. <?php
  2. function Load($filename) {
  3. if(file_exists($filename)) {
  4. include($filename);
  5. }
  6. else {
  7. echo 'brak pliku';
  8. }
  9. }
  10. ?>


  1. <?php
  2. Load('config.php');
  3. Load('db.php');
  4. ?>



Poniższe zestawienie zadziała
  1. <?php
  2. echo $config['a']; wyświeli się a
  3. echo $db['a']; to się nie wykona bo nie ma takiej zmiennej jak $db
  4. ?>


chodzi mi o to żeby nie znając nazwy tablicy, bo może być inna

Go to the top of the page
+Quote Post
nospor
post 1.02.2019, 15:54:33
Post #6





Grupa: Moderatorzy
Postów: 36 447
Pomógł: 6292
Dołączył: 27.12.2004




Podalem ci rozwiazanie w moim pierwszym poscie. Dopoki nie raczysz sie do niego zastosowac to nie pisz wiecej. Oszczedz sobie czasu a mi zdrowia


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Gibcio2008
post 1.02.2019, 16:15:37
Post #7





Grupa: Zarejestrowani
Postów: 54
Pomógł: 0
Dołączył: 26.10.2008

Ostrzeżenie: (0%)
-----


Zastosowałem coś takiego
  1. <?php
  2. function Load($filename)
  3. {
  4. include $filename;
  5. return ob_get_clean();
  6. }
  7.  
  8. $a = Load('config.php');
  9. $b = Load('db.php');
  10.  
  11. print_r($a); - pusto
  12. echo $a; - pusto
  13.  
  14. ?>

i nic się nie dzieje
Go to the top of the page
+Quote Post
nospor
post 1.02.2019, 16:17:01
Post #8





Grupa: Moderatorzy
Postów: 36 447
Pomógł: 6292
Dołączył: 27.12.2004




Kurcze.... przeciez wyraznie napisalem PRZYKLAD NR 5!


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Gibcio2008
post 1.02.2019, 16:23:46
Post #9





Grupa: Zarejestrowani
Postów: 54
Pomógł: 0
Dołączył: 26.10.2008

Ostrzeżenie: (0%)
-----


Aaaaa to wybacz nie zauważyłem tej 5


  1. <?php
  2. $config['a'] = 'A';
  3. return $config;
  4. ?>


  1. <?php
  2. $db['a'] = 'A';
  3. return $db;
  4. ?>


  1. <?php
  2. function Load($filename)
  3. {
  4. include $filename;
  5. }
  6.  
  7. $a = Load('config.php');
  8. $b = Load('db.php');
  9.  
  10. echo $a['a'];
  11. ?>


Teraz działa, ale jest jeszcze jedno ale, jak użytkownik stworzy plik konfiguracyjny i nie wklepie return'a, to już nie zadziała
Go to the top of the page
+Quote Post
nospor
post 1.02.2019, 16:28:03
Post #10





Grupa: Moderatorzy
Postów: 36 447
Pomógł: 6292
Dołączył: 27.12.2004




Cytat
to już nie zadziała

A jak user da w tam

die('Blabla');

to tez dzialac nie bedzie.

Moze wez napisz co ty tam cudujesz bo znakac zycie totalnie zle do tego podchodzisz. Skoro mowisz juz o rzeczach ktore jakis user ma wprowadzac...


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Gibcio2008
post 1.02.2019, 16:29:20
Post #11





Grupa: Zarejestrowani
Postów: 54
Pomógł: 0
Dołączył: 26.10.2008

Ostrzeżenie: (0%)
-----


Próbuje a raczej staram się napisać własny MVC smile.gif, a mnie jakieś korzystanie z cudzego nie interesuje, mam nawet książke "Programowanie obietkowe w PHP5" i stanąłem właśnie na tych configach

Ten post edytował Gibcio2008 1.02.2019, 16:30:49
Go to the top of the page
+Quote Post
nospor
post 1.02.2019, 16:35:33
Post #12





Grupa: Moderatorzy
Postów: 36 447
Pomógł: 6292
Dołączył: 27.12.2004




A co ma wlasne MVC do faktu ze jakis user bedzie pisal wlasny config?

A nawet jesli zamierzasz to udostepniac i inni maja z tego korzytac to sorki, jak ktos spieprzy bo nie przeczytal twojej dokumetnacji to jego wina a nie twoja. Nie po to symfony pisze doc by na slepo walic literki w kodzie


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Gibcio2008
post 1.02.2019, 16:36:39
Post #13





Grupa: Zarejestrowani
Postów: 54
Pomógł: 0
Dołączył: 26.10.2008

Ostrzeżenie: (0%)
-----


No w sumie to racja, jeszcze się z tym prześpię, na dzisiaj dam sobie spokuj
Go to the top of the page
+Quote Post
viking
post 1.02.2019, 16:59:15
Post #14





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
Dołączył: 30.08.2006

Ostrzeżenie: (0%)
-----


Spokój.
Zobacz sobie np pakiet zend-config jak to jest zrobione. I poza tym książka php5 jest już dawno przestarzała.


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 19.04.2024 - 17:26