Traditionally, you connect once for each page and the connection is automatically closed when the PHP script ends. (You can close it manually but PHP closes it by default so there's little advantage to manually closing it). This model works fine even for busy web sites where you get 5-10 people per second viewing pages.
There are persistent connections (as long as you have MySQL set to allow them) and you use pconnect to establish them in PHP. I've been told that they can reduce the number of simultaneous connections you have open but I don't have much experience with them.
On an extremely busy site where the information comes from a database but isn't customized for each user, you can have a master script that reads from the database once and builds a static HTML file. Users see the HTML file so there is far less demand on MySQL connections - CPU, RAM and Hard drive load are also greatly reduced too. An example of this might be a news web site where the administrators can add / edit / delete news stories in the database. Each time the database is changed, a new static HTML file is generated. This is great if the page doesn't include any user specifc data that comes from the database.