But what is the purpose of that? Does it offer faster processing or does having vars in strings pose a vulnerability that I don't know about?

To me, this:

Code:
 $string = "The color of the ball is $color."



is easier and much more efficient than:

Code:
 $string = "The color of the ball is " + $color + "."



Again, is it simply preference or is there some benefit to not using them inside of the string?