Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: globalizacja funkcji
Forum PHP.pl > Forum > PHP
jarmiar
witojcie

mam includowany plik z klasą i w głównym pliku napisałem sobie funkcję, ale niestety ta funckja zawiera w sobie wywołanie funckji z includoiwanej klasy.

problem polega na zasięgu funckji w jaki sposób mogę sobie ją zglobalizować??
Darti
przypatrz się:
  1. <?php
  2. // plik klasa.php
  3. class b{
  4. function __construct(){
  5. echo 'konstruktor klasy b<br>';
  6. }
  7.  
  8. function funkcja(){
  9. echo 'działanie wewnątrz funkcji klasy b<br>';
  10. }
  11. }
  12. ?>
  1. <?php
  2. // plik o innej nazwie
  3. include('klasa.php');
  4.  
  5. function jakas_inna_funkcja(){
  6. $cos = new b(); // utworzenie nowego obiektu na podstawie klasy
  7. $cos->funkcja(); // wywołanie funkcji wewnątrz obiektu zbudowanego na podstawie klasy
  8. }
  9.  
  10. jakas_inna_funkcja();
  11. ?>


powinno działać...
jarmiar
ale ja tak właśnie robię
mike
Pokaż kod.
Nie nauczyłeś się jeszcze że my z kodu wróżymy a nie z fusów.
jarmiar
oto kod:
  1. <?
  2. require_once 'phplibgadu.php';
  3.  
  4. function napisz($slowo, $co)
  5.  {
  6.  if ( preg_match('#'.$slowo.'#si', $packet['msg']) ) 
  7.  {
  8.  $gg->sendMessage($packet['sender'], "$co");
  9.  }
  10.  }
  11. ?>



a tu wywołanie mojej funkcji:

  1. <?
  2. if ($packet['type'] == GG_RECV_MSG) 
  3.  {
  4.  napisz('Witam', 'Ja też ciebie witam');
  5.  napisz('Pogoda', 'dzisiaj jest bardzo ładna pogoda :)');
  6.  }
  7. ?>
mike
A skąd masz zmienną $gg wewnątrz funkcji?
Przeciez ona jest niewidoczna, no chyba że w pliku phplibgadu.php jest zadeklarowana jako globalna.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.