A questão: o exemplo fornecido é apenas um "exemplo" ou é exatamente o que você está procurando? Existem muitas respostas misturadas aqui, e eu não entendo a complexidade da aceita.
Para descobrir se ALGUM conteúdo da matriz de agulhas existe na string e retornar rapidamente verdadeiro ou falso:
$string = 'abcdefg';
if(str_replace(array('a', 'c', 'd'), '', $string) != $string){
echo 'at least one of the needles where found';
};
Em caso afirmativo, dê crédito a @Leon por isso.
Para descobrir se TODOS os valores da matriz de agulhas existem na string, como neste caso, todos os três 'a', 'b'e 'c'DEVEM estar presentes, como você mencionou como seu "por exemplo"
echo 'Todas as letras são encontradas na string!';
Muitas respostas aqui estão fora desse contexto, mas duvido que a intenção da pergunta que você marcou como resolvida. Por exemplo, a resposta aceita é uma agulha de
$array = array('burger', 'melon', 'cheese', 'milk');
E se todas essas palavras DEVEM ser encontradas na string?
Então você experimenta alguns "not accepted answers"nesta página.