Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> dostęp do zwracanej tablicy, [podstawy składni]
df403a
post
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 5.02.2009

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


Mam dosyć podstawowe pytanie. Mam powiedzmy funkcje która zwraca tablicę z elementami. Chce się dostać do jednego z tych elementów np o kluczu '1' bez konieczności przepisania tej tablicy do zmiennej. Np

  1. <?php
  2. echo array('a','b','c')[1];   //<< zła składnia
  3. ?>


  1. <?php
  2. //tak nie chce robić
  3. $a = array('a','b','c');
  4. echo $a[1];
  5. ?>


oczywiście to przykład, bo chodzi o inne funkcje które zwracają tablice, które chce wykorzystać np bezpośredni w while()

Ten post edytował df403a 5.02.2009, 12:19:05
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
blooregard
post
Post #2


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Cytat
bez konieczności przepisania tej tablicy do zmiennej


Tablica jest typem danych, tak samo jak integer czy string.
Musi istnieć jako miejsce w pamięci, do którego będziesz się odwoływać.
Dlatego musisz najpierw zadeklarować zmienną typu tablicowego, czyli przypisac jej miejsce w pamięci na dane.

Ten post edytował blooregard 5.02.2009, 12:28:49
Go to the top of the page
+Quote Post
df403a
post
Post #3





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 5.02.2009

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


Można się przecież odwołać bezpośrednio do zwracanych int, stringów itd. Jak się odwołać do klucza zwracanej tablicy.

  1. <?php
  2. //kod nie poprawny
  3. while((time() <= $time + $maxtime) and proc_get_status($process)['running'] == 1){
  4.  
  5.  
  6. }
  7. ?>


proc_get_status zwraca tablice, a jak chce w while odwołać się do jej wyniku z kluczem 'running'

Ten post edytował df403a 5.02.2009, 12:41:12
Go to the top of the page
+Quote Post
blooregard
post
Post #4


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




A co stoi na przeszkodzie przypisania tej tablicy do zmiennej ?
Go to the top of the page
+Quote Post
df403a
post
Post #5





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 5.02.2009

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


Cytat(blooregard @ 5.02.2009, 12:40:50 ) *
A co stoi na przeszkodzie przypisania tej tablicy do zmiennej ?


Zaproponuj jak to zrobić, tak żeby w while było sprawdzenie statusu przez proc_get_status()
Go to the top of the page
+Quote Post
nospor
post
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




  1. <?php
  2. while((time() <= $time + $maxtime) and ($zm = proc_get_status($process)) and $zm['running'] == 1){
  3.  
  4.  
  5. }
  6. ?>


ps: czemu tego: $zm = proc_get_status($process)
nie mozesz dac przed petle?
Go to the top of the page
+Quote Post
df403a
post
Post #7





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 5.02.2009

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


Cytat(nospor @ 5.02.2009, 12:46:36 ) *
  1. <?php
  2. while((time() <= $time + $maxtime) and ($zm = proc_get_status($process)) and $zm['running'] == 1){
  3. }
  4. ?>


ps: czemu tego: $zm = proc_get_status($process)
nie mozesz dac przed petle?


Ok. Dzięki. Myślę że to rozwiązuje moj problem.
Natomiast przed pętle nie dam bo to właśnie w pętli co sekunde jest sprawdzanie. Mogłbym dać przed pętne i w środku pętli i tak radzilem sobie do tej pory.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 23.08.2025 - 09:08