If no coding standard is specified, I use a style that mixes the two depending on context. Namely, I use underscores to separate words in variable names and defined constants (variable names all lower case, constants all upper case), but I use camel case to separate words in function and class names (function names begin with a lowercase letter, class names are capitalised).
I avoid camel case for filenames in view that filenames may be case insensitive on some systems, and thus I use underscores as word separators for filenames. However, if some suffix (typically a date or number) is added to the filename, I would use a dash as a separator for that.
I do not think that there is a case to be made to say that one of them is better suited to name identifiers in PHP, or in Javascript, or any other programming language for which such naming is relevant. It tends to be just a matter of style. Consistency is the important thing.