如何将我的网站变成单页应用程序?

The website I'm building contains several php files, each has its own functionality and can be accessed through a link (when u press a link, it directs you to the appropriate page).

I was thinking of implementing a side bar navigation, and bind each php file to a link ( button like).

How is this possible?

You are thinking of a common UI menu, that links to the different (backend generated) pages of your site.

Its a fine design, but its not "Single page".

Single page application mean that a single backend page created the UI, and it is being altered by front-end manipulation, and perhaps some ajax calls to the backend. No real "links" to different backend pages are performed while inside the single-page-app.

There are several ways on how to do this.

In your navigation bar you could pass along a variable in each button like:

index.php?action=readarticle

Then where ever you want to output the file you can do something like this:

<div id="leftmenu">your menu here (with links like index.php?action=readarticle)</div>
<div id="content">
<?php
if(isset($_GET["action"])) {
    switch($_GET['action']) {
        case "readarticle":
        {
            include('readarticle.php');
            break;
        }
    }
}
?>
</div>

This wont work with just PHP..

You can work with javascript to make a single page application. There are many frameworks available.

Take a look at this question to see some that are available.

but you dont need a framework for this. This can also be done with pure javascript or with jquery.

I was just concerned that each time i press a link, the navigation bar will also be refreshed and wanted a way to just make things "smoother"

Here is a simple solution: Add eventlisteners(click) to your buttons or links. In the callback make a ajax request to grab the file (or jquery load()), and fill a element with the response.