escaping - Is it possible to "escape" a method name in PHP, to be able to have a method name that clashes with a reserved keyword?
I'm doing MVC in PHP, and i'd like to have a list() method inside my Controller, to have the URL /entity/list/parent_id, to show all the "x" that belong to that parent.
However, I can't have a method called list(), since it's a PHP reserved keyword.
In VB.Net, for example, if I need to have something with a name that clashes with a reserved keyword, I can wrap it in [reserved_name].
In SQL, you can do the same thing.
In MySQL, you use the backtick `
Is there some syntax in PHP that specifies "treat this as an identifier, not as a keyword"?
(NOTE: I know I can use routes to do this without having a list() method. I can also simply call the action something else. The question is whether PHP provides this kind of escaping)
Answer
Solution:
You can use
__call()
method to invoke private or public_list()
method which implements your functionality.Answer
Solution:
With variable names you can use the bracket signs:
But PHP does not provide a method for escaping function names.
If you want a 'user-defined' way of getting around this, check out this comment:
http://www.php.net/manual/en/reserved.keywords.php#93368