


Summary of ten tips for PHP developers to get twice the result with half the effort_PHP Tutorial
What would happen if you used a large mirror as a surfboard? You may be able to conquer waves in a shorter period of time, but you surely know deep down that this is not the right choice for surfing. The same principle applies to PHP programming, although the analogy may sound a little weird. We often hear of people trying to learn PHP in just over a weekend, but IMHO this is a very poor way to learn this programming language.
Why is the process of learning PHP different from any other language?
By its nature, if you master the way of "doing things" in the PHP language, you will become more comfortable using it, so it is worth the investment to understand these ways. In PHP, simply solving problems according to your own ideas is often a wrong approach. This is not because you are a bad programmer, but because there are some standard techniques you must use if you want to write good maintainable code. Let’s take a look at the top 10 tips you need to know.
1. How to correctly create the 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 new to PHP, 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 a more efficient code for parsing the data would look like this:
$action = isset($_REQUEST['action']) ? $_REQUEST['action'] : 0;
3. Use var_dump to debug PHP code
If you are looking for PHP debugging technology, I must say that var_dump should be the goal 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 the code logic and Smarty handles the presentation layer
Smarty is a template PHP template engine written in PHP. It is one of the most famous PHP template engines in the industry. . 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 change the logical content of the program without affecting the page design of the front-end personnel, and front-end personnel re-modify the page without affecting the program logic of the program. This is particularly important in projects involving multi-person collaboration.
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's a good idea to use global values for database table or database connection information, but don't 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. In this way, anyone who tries to access other web pages 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 functions. The sample code is as follows:
public function dbExec($query)
{
$result = $this->db->exec($query);
if (PEAR::isError($result))
errorRedirect($result->getMessage(), true);
else
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);
}
}
8. One php file processes the input, and one class.php file processes the input. Specific functions
An important way to avoid cluttering the code is to redirect it to other functions for processing after obtaining user input. 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;
...
As shown above, I used a message class and then started doing the switch check. $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 are 99 most important parts of any PHP website % may be the 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, $users USR
WHERE id_sender = '$id' AND sender_purge = FALSE AND USR.id = PM.id_receiver AND is_read = TRUE
ORDER BY date_sent DESC";
$result = $this->dbQueryAll($sql);
return $result;
}
First, we The user input is checked (passing the message id via a GET variable) and then we execute our SQL command. Pay attention to the usage of SQL here. You need to understand how to use aliases and related tables.
10. When you only need one object, use the singleton pattern
In a very common situation in PHP, we only need to create an object once, and then We use it throughout our program. A good example of this is smart variables, which once initialized can be used anywhere. A good implementation for this situation is the singleton pattern. The sample code is as follows:
function smartyObject()
{
if ($ GLOBALS['config']['SmartyObj'] == 0)
{
$smarty = new SmartyGame();
$GLOBALS['config']['SmartyObj'] = $smarty;
}
else
$smarty = $GLOBALS['config']['SmartyObj'];
return $smarty;
}
Note that we have A global smarty variable (in this example it is initialized in config.php), if its value is 0 we will create a new smarty object. Otherwise, it means that the object has already been created and we just need to return it.

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



PHP 8.4 brings several new features, security improvements, and performance improvements with healthy amounts of feature deprecations and removals. This guide explains how to install PHP 8.4 or upgrade to PHP 8.4 on Ubuntu, Debian, or their derivati

Visual Studio Code, also known as VS Code, is a free source code editor — or integrated development environment (IDE) — available for all major operating systems. With a large collection of extensions for many programming languages, VS Code can be c

If you are an experienced PHP developer, you might have the feeling that you’ve been there and done that already.You have developed a significant number of applications, debugged millions of lines of code, and tweaked a bunch of scripts to achieve op

This tutorial demonstrates how to efficiently process XML documents using PHP. XML (eXtensible Markup Language) is a versatile text-based markup language designed for both human readability and machine parsing. It's commonly used for data storage an

JWT is an open standard based on JSON, used to securely transmit information between parties, mainly for identity authentication and information exchange. 1. JWT consists of three parts: Header, Payload and Signature. 2. The working principle of JWT includes three steps: generating JWT, verifying JWT and parsing Payload. 3. When using JWT for authentication in PHP, JWT can be generated and verified, and user role and permission information can be included in advanced usage. 4. Common errors include signature verification failure, token expiration, and payload oversized. Debugging skills include using debugging tools and logging. 5. Performance optimization and best practices include using appropriate signature algorithms, setting validity periods reasonably,

A string is a sequence of characters, including letters, numbers, and symbols. This tutorial will learn how to calculate the number of vowels in a given string in PHP using different methods. The vowels in English are a, e, i, o, u, and they can be uppercase or lowercase. What is a vowel? Vowels are alphabetic characters that represent a specific pronunciation. There are five vowels in English, including uppercase and lowercase: a, e, i, o, u Example 1 Input: String = "Tutorialspoint" Output: 6 explain The vowels in the string "Tutorialspoint" are u, o, i, a, o, i. There are 6 yuan in total

Static binding (static::) implements late static binding (LSB) in PHP, allowing calling classes to be referenced in static contexts rather than defining classes. 1) The parsing process is performed at runtime, 2) Look up the call class in the inheritance relationship, 3) It may bring performance overhead.

What are the magic methods of PHP? PHP's magic methods include: 1.\_\_construct, used to initialize objects; 2.\_\_destruct, used to clean up resources; 3.\_\_call, handle non-existent method calls; 4.\_\_get, implement dynamic attribute access; 5.\_\_set, implement dynamic attribute settings. These methods are automatically called in certain situations, improving code flexibility and efficiency.
