Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 00:49 11.07.25 
Компютри и Интернет
   >> PHP
*Кратък преглед

Тема call_user_func със статик метод и параметърнови  
Автор Bълk (умора няма)
Публикувано12.08.05 01:43



значи имам следната простотия

class A{
function B($c,$d,$e)
}

искам да извикам този метод са параметри използвайки callback без да имам инстанс на класа. по цялата идея е call_user_func(array('a', 'b', array($c, $d, $e))) ама нищо не става. Забих се в сорсове на РНР и документация за предаване на параметри чак от 3ката ама стигнах до извода, че там е по-добре.

по причина бързодеъствие не искам да го правя с eval.



Тема Re: call_user_func със статик метод и параметър [re: Bълk]  
Автор phpGuruАдминистратор (член)
Публикувано12.08.05 03:18



ми виж по-внимателно документацията :-)

http://bg2.php.net/manual/en/function.call-user-func.php

пише

Object methods may also be invoked statically using this function by passing array($objectname, $methodname) to the function parameter.

<?php
class myclass {
function say_hello()
{
echo "Hello!\n";
}
}

$classname = "myclass";

call_user_func(array($classname, 'say_hello'));
?>

не съм го пробвал, ма требе да работи :-) и другото писал си ги с малки букви, па си ги кръстил с големи :-)



Тема Re: call_user_func със статик метод и параметърнови [re: phpGuru]  
Автор Bълk (умора няма)
Публикувано12.08.05 03:30



то това е ясно ... ама параметри?

от примера си баца като слънце, ама нещо пробвам да го измисля и с предаване на параметри ама май не правя като хората

Редактирано от Bълk на 12.08.05 03:32.



Тема Re: call_user_func със статик метод и параметърнови [re: Bълk]  
АвторPenguin (Нерегистриран)
Публикувано12.08.05 09:03



Това е работещ пример от моя програма, която вика статичен метод с параметри.

if (($error = call_user_func (
array (__CLASS__, "check_" . $one_check ["type"]),
$string,
$one_check
)) !== null) {
...
}



Тема Re: call_user_func със статик метод и параметърнови [re: Bълk]  
Автор Blake (извънземен)
Публикувано12.08.05 09:53



значи по принцип съм си играл доста с call_user_func-работите - значи трябва ти

call_user_func_array(array(&$object, "method_name"), array(param1, param2, ..., paramN))

- пробвай така, трябва да стане... за това да стане без инстанс - не знам дали ще се получи, но ако имаш инстанс - работи без грешка...

ся гледам в юзър нотес, че без инстанс трябва да стане с array("class_name", "method_name") вместо array(&$object, "method_name"), ама не съм пробвал подобна комбинация...

Just a genius



Тема Re: call_user_func със статик метод и параметърнови [re: Bълk]  
Автор phpGuruАдминистратор (член)
Публикувано12.08.05 13:12



ми аз не виждам проблем ....

ceco@c92-100:~/tmp$ cat test_call_func.php
<?
class eho {
function beho($param) {
echo "eho - beho - $param\n";
}
}

call_user_func_array(array('eho', 'beho'), array('Вълчо'));
?>
ceco@c92-100:~/tmp$ php test_call_func.php
eho - beho - Вълчо

пробвах го с
PHP 4.3.10-15 (cli) (built: May 9 2005 08:54:56)
Copyright (c) 1997-2004 The PHP Group
Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies

също и с
PHP 5.1.0-dev (cli) (built: Jul 28 2005 12:37:11)
Copyright (c) 1997-2005 The PHP Group
Zend Engine v2.1.0-dev, Copyright (c) 1998-2004 Zend Technologies



Тема Re: call_user_func със статик метод и параметърнови [re: phpGuru]  
Автор Bълk (умора няма)
Публикувано12.08.05 15:29



мда, точно този вариант съм пропуснал. благодаря за упътване, са ще напъна нещата.




*Кратък преглед
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2025 Dir.bg Всички права запазени.