DEV Community

Discussion on: Best Practice - Check if property exist and assign

Collapse
 
mlueckl profile image
Michael Lueckl • Edited

I do really like this approach!
I wasn't aware you can assign property names like this and creating a static class is so much cleaner and provides a lot of benefits.

This is what I was looking for :)

Can you please explain what
: self
exactly is used for?
From what I understand it allows you to create an instance of the class inside the static method but it works also when I remove it.
I don't really know how to search for it and couldn't find an explanation.

Cheers

Thread Thread
 
belinde profile image
Franco Traversaro

It's a PHP 7 feature, it's called "return type declaration": basically you declare that the function will always return something having the declared type; if you return something else, like an integer, or don't return anything, a TypeError is thrown. I really like this feature, strict type force you to write better code.

Thread Thread
 
mlueckl profile image
Michael Lueckl • Edited

This is great, guess most of the time I use PHP in a too "simple" way and should get more familiar with such details as it really helps to improve and ease the code :)

It's basically like in C++, or similar languages, when you define a function with a specific return type like

static QualityIssue fromArray(vector<type> &source){}

Thanks for the explanation, I struggled to find a good search query for this question with only the code.