Link to the project page from the PHP program comment header

This makes the purpose of the PHP script more clear to other
programmers and users, who may otherwise wonder what is the point.
Comment that the PHP script expects a standard library function

The PHP script says it takes the name of a ‘PHP function’ but that can
be misunderstood as if we are saying the script accepts user-defined
functions as well.  This is not the case; the program only produces
output for functions that are part of PHP’s standard library.  So we
make a small addition to the source-code comments to reflect that.
Add the ‘#group’ directive to generated snippets when possible

YASnippet uses the ‘#group’ directive to structure the menu of
snippets available in a mode.  Since PHP has such a large standard
library we do not want the size of that menu to spiral out of
control, which it will if the user starts generating a lot of
snippets.  To help avoid that we add the ‘#group’ directive whenever
we can.  That creates sub-menus for all of the snippets belonging to
the same group.  Since PHP’s reflection API allows us to get the name
of the extension to which a function belongs, and since so many
standard library functions are parts of extensions, we use that
extension name for the group name.  So for example, the function
json_encode() has the ‘#group: json’ directive, array_map() has
‘#group: standard’, and so on.

This patch also restructures the way we build the directives.  Now we
create an array of them just like the parameter ‘chunks’, and at the
end of the program we implode() the directives together.  This makes
it easier to omit ‘#group’ for the functions which do not belong to
any extension.