[advanced search]
 

Go Back   NamePros.com > Discussion > Web Design & Development > Programming

Programming PHP, Perl, Ruby on Rails, AJAX, HTML, XHTML, CSS, JavaScript, MySQL and any other coding topics.


Closed Thread
 
LinkBack Thread Tools
Old 03-02-2008, 01:48 AM   #1 (permalink)
NamePros Member
 
Join Date: Mar 2008
Posts: 43
200.00 NP$ (Donate)

evdoxos is an unknown quantity at this point


PHP: How to pass a function as an argument?

In PHP, what is the way to pass a function as an argument in an other function?

Last edited by evdoxos; 03-02-2008 at 02:15 AM.
evdoxos is online now  
Old 03-02-2008, 05:05 AM   #2 (permalink)
NamePros Regular


 
DomainManDave's Avatar
 
Join Date: Jun 2007
Location: davesweblog.com
Posts: 947
100.00 NP$ (Donate)

DomainManDave is a splendid one to beholdDomainManDave is a splendid one to beholdDomainManDave is a splendid one to beholdDomainManDave is a splendid one to beholdDomainManDave is a splendid one to beholdDomainManDave is a splendid one to beholdDomainManDave is a splendid one to behold

Cancer
Well if you want to call a function you can use the call_user_func function. If you need to pass the function name as parameter you would do this...

Code:
<?php
function myFunction($callbackFunc)
{
    // Do whatever you got to here...

   // and then..
    call_user_func($callbackFunc);
}
?>
Hope this helps.
DomainManDave is offline  
Old 03-02-2008, 01:00 PM   #3 (permalink)
NamePros Member
 
Join Date: Mar 2008
Posts: 43
200.00 NP$ (Donate)

evdoxos is an unknown quantity at this point


Thanks a lot. But my problem is more complicated:

<?php

class a
{
public function f()
{
echo "af";
}
}

function func($g)
{
class b extends a
{
public function f()
{
echo "bf";
// I want to call function g from here
}
}
$b1 = new b();
$b1->f();
}

function g()
{
echo "g";
}

// From here I want to call function func with argument the funtion g

?>
evdoxos is online now  
Old 03-02-2008, 01:39 PM   #4 (permalink)
Senior Member
 
Peter's Avatar
 
Join Date: Nov 2003
Location: Scotland
Posts: 4,900
0.60 NP$ (Donate)

Peter has a reputation beyond reputePeter has a reputation beyond reputePeter has a reputation beyond reputePeter has a reputation beyond reputePeter has a reputation beyond reputePeter has a reputation beyond reputePeter has a reputation beyond reputePeter has a reputation beyond reputePeter has a reputation beyond reputePeter has a reputation beyond reputePeter has a reputation beyond repute

Child Abuse Save The Children Save The Children Help The Homeless - Holiday 2009 Help The Homeless - Holiday 2009 Help The Homeless - Holiday 2009 Help The Homeless - Holiday 2009
why have you got a class within a function (class b is within the func function)?

This looks like very bad code design.
__________________
Manage your portfolio using my new Domain Portfolio Management script.
Securing Your Domain Name From Theft
Peter is offline  
Old 03-02-2008, 02:21 PM   #5 (permalink)
NamePros Member
 
Join Date: Mar 2008
Posts: 43
200.00 NP$ (Donate)

evdoxos is an unknown quantity at this point


I need to call the following lines of code -the body of function func- from many locations in my application. So I use a function. Is it a bad idea?
(class a -not b- has a lot lines of code)
Also functions like g are more than 50!

class b extends a
{
public function f()
{
echo "bf";
// I want to call function g from here
}
}
$b1 = new b();
$b1->f();

Last edited by evdoxos; 03-02-2008 at 02:26 PM.
evdoxos is online now  
Closed Thread


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Site Sponsors
Advertise your business at NamePros

All times are GMT -7. The time now is 03:14 PM.


Powered by: vBulletin® Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0
Template-Modifications by TMS
vBCredits v1.4 Copyright ©2007 - 2008, PixelFX Studios

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85