Home > Article > Backend Development > Ten tips for PHP developers to get twice the result with half the effort_PHP Tutorial
1. How to correctly create an Index page of a website
When creating every website, establishing the index page of the website is one of the first things to do. If you are a PHP newbie, a typical approach when writing an index page is to program only the content required for the index page, and create another page for other links. However, if you want to learn a more efficient way to implement PHP programming, you can use the "index.php?page=home" mode, which is used by many websites.
2. Use Request Global Array to capture data
In fact, we have no reason to use $_GET and $_POST arrays to capture values. The global array $_REQUEST allows you to obtain a get or form request. Therefore, in most cases, the more efficient code for to parse data is roughly as follows:
$action = isset($_REQUEST['action']) ? $_REQUEST['action'] : 0; 3. Utilization var_dump for PHP code debugging
If you are looking for php debuggingtechniques, I must say that var_dump should be what you are looking for. This command can meet all your needs when it comes to displaying php information. Most cases of debugging code are related to getting values in PHP.
4. PHP handles code logic, Smarty handles the presentation layer
Smarty is a templatePHP template engine written in PHP, which is currently the most famous PHP template in the industry One of the engines. It separates logical code and external content, providing an easy-to-manage and use method to logically separate PHP code that is originally mixed with HTML code. Simply put, the purpose is to separate PHP programmers from front-end personnel, so that programmers can change the logical content of the program without affecting the page design of the front-end personnel, and the front-end personnel can re-modify it. The page will not affect the program logic of the program, which is particularly important in multi-person collaboration projects.
5. When you really need to use global values, create a Config file
It is a bad practice to create global values frequently, but sometimes the actual situation does require this. It is a good idea to use global values for Database Tutorial table or database connection information, but do not use global values frequently in your PHP code. Alternatively, a better approach is to store your global variables in a config.php file.
6. If it is not defined, access is prohibited!
If you create the page correctly, there is no reason for anyone else to access the index.php page outside of index.php or home.php. Once index.php is accessed, you can open the required page by obtaining the variables. Your index page should contain code similar to:
define('yourPage',1); Then, other pages should contain:
if (!defined('yourPage')) die('Access Denied') ; The purpose of this is to prevent direct access to your other php pages. This way, anyone trying to access other webpages without going through index.php will get an "Access Denied" message.
7. Create a database class
If you are doing database programming (a very common task in PHP), a good idea is to create a database class to handle any database management functionality . The sample code is as follows:
Public function dbexec ($ query) {$ result = $ this-& gt; db-& gt; exec ($ query); if ( PEA R :: ISERRT ($ Result)) ErrorRedirect ($ result-& gt ;getMessage(), true); else ’ ’ s ‐ ‐ ‐ ‐ ‐ ‐ ‐ ‐ ‐ ‐ return $result; } This function only receives a query statement and executes it. It also handles any errors that may occur. You can also include audit code here, but I prefer to use a similar audit function:
// checks if arguments given are integer values not less than 0 - has multiple arguments function sanitizeInput() { $numargs = func_num_args( ); $arg_list = func_get_args(); for ($i = 0; $i < $numargs; $i++) { if (!is_numeric($arg_list[$i]) || $arg_list[$i] < 0 ) errorRedirect("Unexpected variable value", true); Redirect it to other functions for processing. The principle is very simple, the php file takes whatever input we need and then redirects its execution to a function in the class file. For example, suppose there is a URL like "index.php?page=profile&action=display". The URL is retrieved by profile.php and the action is "display". Then using a simple switch function, we execute the real display function:
require_once PROJECTROOT.'libs/messages.class.php'; $message = new Message(); switch ($action) { case 'display' : $message->display(); break; $message is just an object used by calling functions in the class.
9. Know your
SQL statements and always Sanitize them As I mentioned before, there is a 99% chance that the most important part of any php website is It's a database. Therefore, you need to be very familiar with how to use sql correctly. Learn association tables and more
advanced techniques. Below I will show an example of a function using MySQL and review it using function #7 of this article. private function getSentMessages($id) { $this->util->sanitizeInput($id); $pm_table = $GLOBALS['config']['privateMsg']; $users = $GLOBALS['config '] users']; $ SQL = "Select PM.*, USR.Username as name_sender from $ PM_Table PM, $ Usersr WHERE Id_SENDER = '$ ID' And Sender_purge = FALS E and usr.id = PM.ID_RECEIVER and is_read = True SQL command. Pay attention to the usage of SQL here. You need to understand how to use aliases and related tables.
10. Use the singleton pattern when you only need one object
In a very common situation in PHP, we only need to create an object once and then use it throughout our program. A good example of this is smart variables, which once initialized can be used anywhere. A good implementation solution for this situation is the singleton pattern. The sample code is as follows:
Function SmartyObject () {if ($ Globals ['Config'] ['Smartyobj'] == 0) {$ SMARTY = New Smartygame (); bj '] = $ Smarty;} Else $smarty = $GLOBALS['config']['SmartyObj']; return $smarty; We will create a new smarty object. Otherwise, it means that the object has already been created and we just need to return it.