Session is stored on server side because how much time page will execute it doesn't depend on client it depends on server. Server decide the session of each page ..thats why session is stored on server side
PHP Session is definitely stored on server. Actually, when a server is serving web pages; it must know to whom it is serving. Because at the same time, multiple request can come to the server. Each request will have different query. How will the server ensure that for a specific query there must be a specific page to be sent to the client?
So server keep a file with it. We can set the file path where the session is saved in php.ini. Each file has some specific name containing the Session ID as will. This session id is unqiue and will be kept on the server till it expires or destroyed.
This session id saved on the client side as well. when it communicates with the server they can sync with each other that which client has request to whom server is to server pages.