zmienna funkcyjna

  • Rejestracja: dni
  • Ostatnio: dni
0
Kopiuj
function name($fun)
{
	if($$fun($_GET['ss'])) return 'tak';
}

$fun - isset lub empty

dlaczego powyższy kod nie działa?

Fatal error: Function name must be a string in ...

Patryk27
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Wrocław
  • Postów: 13042
0

Jak tę funkcję wywołujesz?

Sarrus
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2512
0

A w manualu poszukał?
http://us3.php.net/manual/en/functions.variable-functions.php

Kopiuj
function name($fun)
{
        if($fun($_GET['ss'])) return 'tak';
}

Tak powinno działać

  • Rejestracja: dni
  • Ostatnio: dni
0

Sarrus, sek w tym ze nie dziala

Fatal error: Call to undefined function isset()

$zm = name('isset');

unikalna_nazwa
  • Rejestracja: dni
  • Ostatnio: dni
0
dokumentacja isset napisał(a)

Note: Because this is a language construct and not a function, it cannot be called using variable functions.

tak samo echo, print, unset, empty, include i require - to nie są funkcje (mimo że wyglądają podobnie) tylko konstrukcje języka i nie możesz ich tak wywoływać
musisz je najpierw "opakować" w funkcję

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.