phpにおける関数と言語構造

funciton helloworld() {
  echo "hello, world!"
 }

この式のhelloworldは関数です。そして、echoは関数ではなく、言語構造です。これらの違いは何でしょうか?
……見るからに形が違いますね。関数は名前のあとに()、その後{}に処理の内容を書く、という書き方が予め決まっていますが、言語構造にはそうした決まりはありません。つまり、echo文をこのように書くことも出来ます。

echo ("hello, world!")

言語構造は、関数とは違ってどうやら「ハードコード」されているものらしいです。予め組み込まれていると考えてよいようです。