Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Warning w PHP5
elka
post
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 6.02.2004

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


Mam funkcję (w sumie nie ważne co robi) i ona działa zarówno pod PHP4 i PHP5

  1. <?php
  2. function CategoryIDonList($list, $id)
  3. {    
  4.   $j=0;    
  5.   while ($j<count($list) && $list[$j][0]!=$id) $j++;
  6.   if ($j==count($list)) return 0;
  7.   else return $j;
  8. }
  9. ?>


Ale przy PHP5 pojawia się ostrzeżenie

Warning: Call-time pass-by-reference has been deprecated - argument passed by value; If you would like to pass it by reference, modify the declaration of CategoryIDonList(). If you would like to enable call-time pass-by-reference, you can set allow_call_time_pass_reference to true in your INI file. However, future versions may not support this any longer

Może ktoś wie co tu zmienić -- może wystarczy coś przestawić, a ja tego nie widzę, żeby nie było tego ostrzeżenia (chodzi mi oczywiście o modyfikację funkcji), albo może ktoś wie które miejsce wywołuje to ostrzeżenie??


Z góry dzięki za pomoc

Ten post edytował elka 17.01.2006, 20:33:41
Go to the top of the page
+Quote Post
FiDO
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 717
Pomógł: 0
Dołączył: 12.06.2002
Skąd: Wolsztyn..... Studia: Zielona Góra

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


Najprawdopodobniej wywolanie tej funkcji u Ciebie wyglada jakos tak:
  1. <?php
  2.  
  3. $cos = CategoryIDonList( &$list, $id);
  4.  
  5. ?>


Czyli przekazujesz jako parametr referencje, a tak juz nie wolno. To czy funkcja przyjmuje parametr przez wartosc czy referencje powinno zalezec od definicji funkcji, a nie jej wywolania. Zatem jesli chcesz ktorys parametr przekazac przez referencje to w wywolaniu powinno byc normalnie:
  1. <?php
  2.  
  3. $cos = CategoryIDonList( $list, $id);
  4.  
  5. ?>

a w definicji:
  1. <?php
  2.  
  3. function CategoryIDonList( &$list, $id)
  4. {
  5.   // ...
  6. }
  7.  
  8. ?>


--------------------
Brak czasu :/
Go to the top of the page
+Quote Post
NuLL
post
Post #3





Grupa: Zarejestrowani
Postów: 2 262
Pomógł: 21
Dołączył: 3.05.2004
Skąd: Sopot, Krakow, W-wa

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


Ktoras ze ze zmiennych jest dostarczana do funkcji jako referencja. W deklaracji funkcji przed ta zmienna dopisz &

EDIT: Znowu wolniejszy tongue.gif

Ten post edytował NuLL 17.01.2006, 23:37:06


--------------------
Javascript, Coffeescript, Node.js, Mongo, CouchDb, chmury, workery & inne bajery - zycie jest zbyt krotkie aby miec nudna prace :)
Go to the top of the page
+Quote Post
elka
post
Post #4





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 6.02.2004

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


Dzięki bardzo...na przyszłość będę wiedziała smile.gif))
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 Aktualny czas: 21.08.2025 - 13:11