l33t fl33t Posted June 27, 2008 Share Posted June 27, 2008 I'm having a rather odd problem, which I've been unable to troubleshoot. I have the following code: function test() {echo 'Success!';} $actions=array( 'Home'=>'news', 'Register'=>'test();', 'Members'=>'memberlist', 'Profile'=>'display_member', 'Summary'=>'display_member', 'Diplomacy'=>'test();'); $_REQUEST['actions']='Diplomacy'; return $actions[$_REQUEST['actions']]; Now, I'd like to have the return construct call the function test(), however I just can't seem to get it working. The odd thing is that it works fine if I output it to the screen with echo, so I'm guessing that it has something to do with the return. Help? Link to comment https://forums.phpfreaks.com/topic/112167-solved-arrays-and-_request/ Share on other sites More sharing options...
ScotDiddle Posted June 27, 2008 Share Posted June 27, 2008 l33t fl33t, Try: eval($actions[$_REQUEST['actions']]); // prints Success! Scot L. Diddle, Richmond VA Link to comment https://forums.phpfreaks.com/topic/112167-solved-arrays-and-_request/#findComment-575862 Share on other sites More sharing options...
l33t fl33t Posted June 27, 2008 Author Share Posted June 27, 2008 Isn't eval something you're not supposed to use because of some security risk or something? Thanks for the fast reply, BTW! Link to comment https://forums.phpfreaks.com/topic/112167-solved-arrays-and-_request/#findComment-575920 Share on other sites More sharing options...
l33t fl33t Posted June 27, 2008 Author Share Posted June 27, 2008 EDIT: Nevermind, I solved it myself. Turns out that appending () to return $actions[$_REQUEST['actions']] so that it reads 'return $actions[$_REQUEST['actions']]();' makes it execute as it should. Thanks a lot all the same! Link to comment https://forums.phpfreaks.com/topic/112167-solved-arrays-and-_request/#findComment-575931 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.