while 的一点理解
while是php里面用的最多的一个函数,但是观察了很久,但是很多人用习惯了,并不知道里面是怎么回事,只是习惯性打上去;
先测一下一秒中,while可以运行多少次循环;
$time1 = microtime(true);
$i =0;
while(1)
{
$i++;
if(microtime(true)- $time1 >1)
{
echo $i;
exit();
}
}
?>
运行结果
389443;
while是当whle括号里面的条件成立的话,就执行,这是绝对正确的
所以while(1)就是无限循环;
实例1:
$sql = "select * from table";
$result = mysql_query($sql);
while($arr = mysql_fetch_assoc($result))
{
}
这一个理解是当while括号里面$arr = mysql_fetch_assoc($result);成立的情况下,就会一直往下运行;
$arr = mysql_fetch_assoc($result);
当执行这个查询的话,第一次,指针就对准第一行,如果第二次查询的时候,他就会对准第二行,一直找到没有结果,返回false就不会执行了
错误写法:
$sql = "select * from table";
$result = mysql_query($sql);
$arr = mysql_fetch_assoc($result));
while($arr = mysql_fetch_assoc($result))
{
}
这样执行过来的结果就会少了一行;
实例2:两分算法
while($ip1num>$ipNum $ip2num
{
}
这是discuz里面取得ip地址对应的真实地址的function
附件里面有这个function的文件包
简单的拆成
while($a>1 $b
{
}
再拆
while($a >1)
{
}
while($b
{
}
如果$a 是先有值的情况下,
如果$a =1;
那样就执行不下去,条件不成立
或者$a =2;
这样就无限循环了;
重点
如果$a没有先附值
刚开始我一直以为是错误,但是实际上他不会有错误,
这是php不同的地方
简单通过一个程序测试一下
$i =0;
while($a
{
$i++;
if(microtime(true)- $time1 >1)
{
echo $i;
$a =1;
}
}
?>
运行结果
272487;
while($a
他会一直执行,直到程序里面括号里面重新得到一个值$a =1;
$a
所以
while($a>1 $b
{
}
的理解是当括号内部执行到$a=1两个条件分成成立的情况下执行才中止执行
这样就是双分算法了
如果这两个都理解的话,基本上while就非常清楚了
while(1)非常 庞大的,
本来想帖一个dos的攻击源代码出来,但是感觉如果不小心文章推广得太开,到时候就麻烦了。
dos源码非常 简单,只要上面理解了,非常 容易就可以写一个出来;
ddos就是通过一个调用主控,调用不同服务器网站上面的程序,让他们同时运行,就形成了dos,关键是鸡的数量;

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

Big data structure processing skills: Chunking: Break down the data set and process it in chunks to reduce memory consumption. Generator: Generate data items one by one without loading the entire data set, suitable for unlimited data sets. Streaming: Read files or query results line by line, suitable for large files or remote data. External storage: For very large data sets, store the data in a database or NoSQL.

MySQL query performance can be optimized by building indexes that reduce lookup time from linear complexity to logarithmic complexity. Use PreparedStatements to prevent SQL injection and improve query performance. Limit query results and reduce the amount of data processed by the server. Optimize join queries, including using appropriate join types, creating indexes, and considering using subqueries. Analyze queries to identify bottlenecks; use caching to reduce database load; optimize PHP code to minimize overhead.

Backing up and restoring a MySQL database in PHP can be achieved by following these steps: Back up the database: Use the mysqldump command to dump the database into a SQL file. Restore database: Use the mysql command to restore the database from SQL files.

How to insert data into MySQL table? Connect to the database: Use mysqli to establish a connection to the database. Prepare the SQL query: Write an INSERT statement to specify the columns and values to be inserted. Execute query: Use the query() method to execute the insertion query. If successful, a confirmation message will be output.

One of the major changes introduced in MySQL 8.4 (the latest LTS release as of 2024) is that the "MySQL Native Password" plugin is no longer enabled by default. Further, MySQL 9.0 removes this plugin completely. This change affects PHP and other app

To use MySQL stored procedures in PHP: Use PDO or the MySQLi extension to connect to a MySQL database. Prepare the statement to call the stored procedure. Execute the stored procedure. Process the result set (if the stored procedure returns results). Close the database connection.

Creating a MySQL table using PHP requires the following steps: Connect to the database. Create the database if it does not exist. Select a database. Create table. Execute the query. Close the connection.

Oracle database and MySQL are both databases based on the relational model, but Oracle is superior in terms of compatibility, scalability, data types and security; while MySQL focuses on speed and flexibility and is more suitable for small to medium-sized data sets. . ① Oracle provides a wide range of data types, ② provides advanced security features, ③ is suitable for enterprise-level applications; ① MySQL supports NoSQL data types, ② has fewer security measures, and ③ is suitable for small to medium-sized applications.
