Rookie's PHP Notes 3
Today, I was occupied again during the day. I sorted out my recent schedule in the evening and embarked on my newbie PHP learning journey again. Today I downloaded a "Chuangjia PHPTXT Guestbook Version 1.0" and started looking at the source code. It's already 11:28~.
First, start with index.php: require("config.php"); include("function.php"); The difference between require and include is still important. Manual: http://cn2.php.net/manual/zh/function.require.php.
Now let’s take a look at what’s in config.php and function.php.
Config.php defines some variables that are used throughout the website: such as administrator account, password, message storage path and file name, and the number of messages displayed on each page. I remember there is such a thing in Discuz. Maybe this is an unwritten rule for all PHP sites?
function.php defines a series of functions, such as checking usernames and passwords, converting UBB codes, etc., but I don’t know what UBB codes are~. Ignore it for now.
Go back to index.php. There are a few variables defined later that I don’t know what they are used for, so let’s just ignore them for now, I’m depressed. Followed by a header function http://cn2.php.net/manual/zh/function.header.php. Contains a file called head.php, and uses file() to read the file that saves the message into an array called msgd. http://cn2.php.net/manual/zh/function.file.php
I probably understand the source code today, but it’s too late, so I won’t write it for now and will talk about it later. You should install Word and copy it directly (I don’t know why I don’t have Word on my machine~~). Anyway, I have a rest today, and I won’t have time during the day tomorrow. I won’t go home at night. I will send people to the train station the day after tomorrow, and then go back to school. I really don't know when I will have time to continue my PHP.
require("head.php"); contains a file, but head seems to be only included in index.php. I don’t know why it is not written directly. The code in the head part mainly provides a form for searching messages.
$msgd=file($dbtable); $dbtable has been defined in config, $dbtable="data/data.dat"; This file is used to save messages. The file function is used here to save this file in the $msgd array. Each line of the file is an array element.
$rows=count($msgd); Here, the count function will be used to store the number of elements of $msgd (number of messages) in $rows.
if($kw)//Keyword, determine whether to search
{
for ($i=0;$i<=$rows;$i++)//Traverse
{
$tmp2=explode("| Delimiter |",$msgd[$i]);//No message exists in the tmp2 array.
if($type=="name")//If searching by name
{
$msgn[$i]=$tmp2[1];//Place the name in $msgn[$i]
}else//If you are not searching by name
{
$msgn[$i]=$tmp2[10];//Save the 10th element of the message array in msgn[$i]
}
if(eregi($kw,$msgn[$i]))
{
$chj_nr[]=$msgd[$i];//Use array $chj_nr[] to store a complete message
$chj_numib++;// The number of messages that meet the requirements
}
}
if($chj_numib<1) {echo "No matching results related to $kw!!";exit;}
$msg=array_reverse($chj_nr);//will match the search results Array of messages
$total=ceil($chj_numib/$pagesize); //Calculate the total number of pages
}else//If it is not a search
{
$chj_numib=$rows;//All messages
$msg=array_reverse( $msgd);
$total=ceil($chj_numib/$pagesize);
}
//echo $total;
if($pagesize*$total<$chj_numib)
{
$total++;
$total2=$total-1; //The following is useful
$page2=$page+1; $pp+$pagesize; // Calculate the number of ending items // Same as above
$nextpage=$page+2; $i<$pp2;$i++)//This for loop is used to output all messages that meet the requirements (array $msg)
{
if($i<$chj_numib){ #####
$tmp=explode ("|chjia_com|",$msg[$i]);
?>
The next step is to output a message. At this point index.php is basically finished.
The above is the content of Rookie’s PHP Notes 3. For more related content, please pay attention to the PHP Chinese website (www.php.cn)!

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

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

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

Alipay PHP...

Session hijacking can be achieved through the following steps: 1. Obtain the session ID, 2. Use the session ID, 3. Keep the session active. The methods to prevent session hijacking in PHP include: 1. Use the session_regenerate_id() function to regenerate the session ID, 2. Store session data through the database, 3. Ensure that all session data is transmitted through HTTPS.

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,

The application of SOLID principle in PHP development includes: 1. Single responsibility principle (SRP): Each class is responsible for only one function. 2. Open and close principle (OCP): Changes are achieved through extension rather than modification. 3. Lisch's Substitution Principle (LSP): Subclasses can replace base classes without affecting program accuracy. 4. Interface isolation principle (ISP): Use fine-grained interfaces to avoid dependencies and unused methods. 5. Dependency inversion principle (DIP): High and low-level modules rely on abstraction and are implemented through dependency injection.

How to debug CLI mode in PHPStorm? When developing with PHPStorm, sometimes we need to debug PHP in command line interface (CLI) mode...

How to automatically set the permissions of unixsocket after the system restarts. Every time the system restarts, we need to execute the following command to modify the permissions of unixsocket: sudo...

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.

Sending JSON data using PHP's cURL library In PHP development, it is often necessary to interact with external APIs. One of the common ways is to use cURL library to send POST�...
