- Joined
- 11 yrs. 6 mth. 27 days
- Messages
- 5,381
- Reaction score
- 18,380
- Age
- 45
- Wallet
- 11,590$
- [email protected]
Introduction:
Now a very plain scheme how an MVC framework works. First thing we have is the submitted data. That is what our browser sends when we try to access a page or service. They are then parsed to the controller which calls a specific model which we have previously coded. The model from its side, can call another model and another and so on. We are not limited to the amount of dependencies concerning the model connections. After that, depending on whether the data has been rendered as valid or not, the controller send the data to a view for visualization and interaction with the user.
Most plainly said, MVC is 'model' that separates the data visualization from the user's interaction with it. We're gonna look into the usage of MVC in web applications. As of its abbreviation, it consists of the following:Model
- The model handles the business logic and managed the data. Let's take for example a database that hold a number of records. The model is what connects to that database, collects the records, modifies them and determination of where the data is valid or not. If they are valid, where to write them and if not what not to do with them. The model simply validates the data.
View
- View represents and visualizes the data. The model takes the data from a database or whatever and the view outputs them. Most basically said, we need something that would convert those array or objects structures into HTML in most cases. It can format emails, server responses and more.
Controller
- The controller determines which models to 'absorb' and send them to be processed through the view. Depending on the input data, it determines which models to be called, takes the data and re-sends to view.
That's gonna be the structure we're gonna follow through the process of creating the framework. We gonna start with our first class - App. We initiate the 'program' and end it with that class - takes the query, calls the front controller, define configurations, establish sessions and will kill the code in the end. Also before we start with it, edit the templates if you're using Netbeans as an IDE or just simply remove the closing block tag for PHP code. A single space or new line after it can cause totally different output and mess our code immensely. When removing it, all the code till the last line is rendered as PHP. Another thing we're going to use throughout the series is the declaration of names which will be conventional. This means that if our file is called App.php we gonna name the class within it with the same name. We'll also define namespaces to ease our work.
And because App can exist only once in the whole request which means that there could be only one instance during the execution of the code, this is the perfect place to use a singleton template. This will happen the following way:
Now we just need a public function that will actually run the application. Note where I'm declaring it:
So far we're done with the singleton template in the App class. Now let's go back to our index.php and include the class to initiate the program.
That's be the initialization of the application class. And just to make sure everything is working as it should be, let's echo out a string in the run() method in App.php:
This time we get an output of the method and the typical error for dislocation of a class because we did not realize a logic for non included classes. The idea is that as an answer to the function autoload, we got the name of the class that we are trying to make an instance of.
Same goes with the usage of namespaces in the inclusion. We get the full path of the namespace and the name of the class that we're trying to execute/parse.
Now a very plain scheme how an MVC framework works. First thing we have is the submitted data. That is what our browser sends when we try to access a page or service. They are then parsed to the controller which calls a specific model which we have previously coded. The model from its side, can call another model and another and so on. We are not limited to the amount of dependencies concerning the model connections. After that, depending on whether the data has been rendered as valid or not, the controller send the data to a view for visualization and interaction with the user.

Most plainly said, MVC is 'model' that separates the data visualization from the user's interaction with it. We're gonna look into the usage of MVC in web applications. As of its abbreviation, it consists of the following:Model
- The model handles the business logic and managed the data. Let's take for example a database that hold a number of records. The model is what connects to that database, collects the records, modifies them and determination of where the data is valid or not. If they are valid, where to write them and if not what not to do with them. The model simply validates the data.
View
- View represents and visualizes the data. The model takes the data from a database or whatever and the view outputs them. Most basically said, we need something that would convert those array or objects structures into HTML in most cases. It can format emails, server responses and more.
Controller
- The controller determines which models to 'absorb' and send them to be processed through the view. Depending on the input data, it determines which models to be called, takes the data and re-sends to view.

That's gonna be the structure we're gonna follow through the process of creating the framework. We gonna start with our first class - App. We initiate the 'program' and end it with that class - takes the query, calls the front controller, define configurations, establish sessions and will kill the code in the end. Also before we start with it, edit the templates if you're using Netbeans as an IDE or just simply remove the closing block tag for PHP code. A single space or new line after it can cause totally different output and mess our code immensely. When removing it, all the code till the last line is rendered as PHP. Another thing we're going to use throughout the series is the declaration of names which will be conventional. This means that if our file is called App.php we gonna name the class within it with the same name. We'll also define namespaces to ease our work.
And because App can exist only once in the whole request which means that there could be only one instance during the execution of the code, this is the perfect place to use a singleton template. This will happen the following way:
Now we just need a public function that will actually run the application. Note where I'm declaring it:
So far we're done with the singleton template in the App class. Now let's go back to our index.php and include the class to initiate the program.
That's be the initialization of the application class. And just to make sure everything is working as it should be, let's echo out a string in the run() method in App.php:
This time we get an output of the method and the typical error for dislocation of a class because we did not realize a logic for non included classes. The idea is that as an answer to the function autoload, we got the name of the class that we are trying to make an instance of.
Same goes with the usage of namespaces in the inclusion. We get the full path of the namespace and the name of the class that we're trying to execute/parse.