As the title says: Is there a difference between $str == ” and strlen($str) == 0 in PHP? Is there any real speed difference and is one better to use than the other?
Share
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
Yes, there is an important difference. The == operator does type conversion, so it’s not always going to do what you expect. For example, (0 == "") returns true. So you’re making an assumption that $str is actually a string. If you’re sure this is the case, or if you don’t care about the conversions, then it’s fine. Otherwise you should use ===, and take steps to ensure that you’re comparing strings.