DEV Community

Discussion on: I've been coding for 20 years, Ask Me Anything!

Collapse
 
ashkan90 profile image
Emirhan

Matt, hi! I want to ask you about calling methods in php. I'm working some crazy things for better PHP and I'm struggling with a problem that's calling non static method as static. Ex.
I've a method that's called 'tagShouldBe()' and it's not static

I also want to call it as static
blabla::tagShouldBe()

I don't understand how can I achieve it. If there's a way to do that than can you help me ?:)

Collapse
 
mattsparks profile image
Matt Sparks

What's the reason for not just making the method static?

Collapse
 
ashkan90 profile image
Emirhan

just thinking about Ram's health :d Actually there's no real reason for making methods static. Can you give me advice for this concept i just want to know better and better

Thread Thread
 
mattsparks profile image
Matt Sparks

I would advise you to just make the method static, BUT you can probably do something like this:

public static function TagShouldBe()  {
    return (new self())->tagShouldBe();
}

Again, this is very hacky and I don't advise it. You should consider refactoring your code to solve the problem in the way you want to solve the problem.

Thread Thread
 
ashkan90 profile image
Emirhan

i think making methods static should be fine and better than this 'hacky' thing :) Thank you for response I'm very appreciated.