Tente executar o comando find sem a última parte:
find ./ -name "*.php"
O que você verá é uma lista de nomes de arquivos, todos terminados em .php .
Agora, o comando xarg lê todos esses nomes de arquivo do pipe, pega um monte deles (você pode definir quantos usando a opção -n 2 ) e chama seu argumento com esses nomes. Portanto, se a saída de find for file1.php file2.php file3.php , e xarg agrupar no máximo dois arquivos juntos (ou forçar isso com xargs -n 2 ), ele chamaria
grep "my_awesome_function(" file1.php file2.php
grep "my_awesome_function(" file3.php
que, por sua vez, produz sua saída.
Você pode ver o que realmente está acontecendo, inserindo um echo :
find ./ -name "*.php" | xargs echo grep "my_awesome_function("
Também brinque com o agrupamento:
find ./ -name "*.php" | xargs -n 2 echo grep "my_awesome_function("