吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 4807|回复: 61
收起左侧

[其他转载] php基础教程

  [复制链接]
hackerbob 发表于 2022-4-21 20:27
本帖最后由 hackerbob 于 2022-4-22 16:23 编辑

前言

这是我总结的php基础内容,完全由我一字一句写出来的,绝非复制粘贴网上的教程
其中参杂了一些我的个人见解,如果有不严谨或者不正确的地方请指出,我会更正
以后,我会逐渐完善本篇教程

为什么要学习php?

根据w3techs官方显示,78.7%网站的服务器端编程语言使用PHP,其次是ASP.NET占比10.5%,第三是Java占比3.5%,Python则排名在第七占比1.4%。
虽然网上对php的唱衰不断,但是数据可以说明一切,php依旧是老大,如果因为别人的三言两语就放弃学某一门语言,那根本就是无聊之举

php编译器


推荐使用phpStudy 2018版,用nodpad++来写php代码

1.代码格式

<?php
中间是php代码
?>

注意,php语句结尾要有 ; 号
例:echo "helloworld";

2.注释

单行注释://此乃单行注释
多行注释:
/*
此乃多行注释
*/

3.输出

1.echo "helloworld";
//echo能输出多个字符串,但无返回值
2.print "helloworld";
 //print只能输出一个字符串,如果输出成功,则返回1,即true;反之则返回0,即false

4.变量

变量格式为: $+ 变量名 例:$bob
变量名格式:
1.不能有空格
2.只能是字母,数字和下划线
3.特殊符号不可以
变量声明

<?php
$bob = 1;
$hacker = "helloworld";
$hello = true;
?>

5.常量

<?php
define("bob","hello",true);
//常量用define来定义,格式为:define(常量名,常量值,是忽略大小写错误)
//注意,是否忽略大小写错误,如果是true,则忽略大小写错误,如果是false,则不忽略大小写错误,默认是false
?>

例子:

<?php
define("bob","hello",true);
echo bob;//正确写法,输出hello
echo BOB;//错误写法,会报错
define("abc","hi",false);
echo abc;//正确写法,输出hi
echo ABC;//正确写法,输出hi
?>

6.函数,类,命名空间

函数:

<?php
function bob($bob,$hello)//函数声明格式:function+函数名(参数){函数内容}
{
        echo $bob;
        echo $hello;
        $hakcer =  $bob + $hello;
        return $hacker;//如果有返回值,加上return
}
echo bob(1,2);//函数调用:函数名(参数)
?>

结果:

3

类:

<?php
class bob{
        echo "hello";//类定义格式:class + 类名{要执行的代码}
}
?>

命名空间:

<?php
namespace bob{
        echo "hello";//命名空间定义格式:namespace + 空间名{要执行的代码}
}
?>

7.变量的作用域

<?php
$bob = 1;//在函数之外声明的变量,关系到全局,叫全局变量
echo $bob;
function bob()
{
        global $bob;//全局变量不可以在函数中直接调用,要先用giobal引用
        echo $bob;
        static $hakcer = 1;
        /*在函数之内声明的变量,关系到局部,叫局部变量,局部变量只能在函数内部使用
        函数中的局部变量在函数执行后就会删除,如果需要保存,要用static */
}
?>

8.单引号和双引号的区别

双引号解释字符串中的变量和转义字符

<?php
$bob = "hackerbob";
echo "hello $bob";
?>

结果:

hello hackerbob

单引号不解释

<?php
$bob = "hakcerbob";
echo 'hello $bob';
?>

结果:

hello $bob

9.字符串

输出时,字符串之间可以用 . 来拼接

<?php
$a = "hello";
$b = "world";
echo $a."bob".$b;
?>

结果:

hellobobworld

字符串相关函数(比较重要的):

strlen()//获取字符串长度
strpos(原字符串,要查找的字符串)
//如果有则返回要查找的字符串在原字符串的第一个字母的下标,没有返回0,即false
chop(原字符串,要删除的字符串)
//从右开始,删除原字符串中指定的字符串

10.数组

格式:变量 = array(数组内容)
1.数值数组:

<?php
$a = array("hello","hi,"bob");
echo $a[0];//数值数组中的数据通过下标访问
?>

结果:

hello

2.关联数组:

<?php
$a = array("a" => "hello","b" => "hi");//关联数组其实就是给下标取了一个别名而已
echo $a['a'];//访问时用别名访问
?>

结果:

hello

3.多维数组:

//其实多维数组就是几个数组嵌套在一起,下面是一个三维数组
$bob = array(
    array(
        array(1, 2),
        array("hello", "hi"),
    ),
    array(
        array("bob", "hacker"),
        array(1,2),
    ),
);
echo $bob[0][0][0]//也是从最外边的数组访问到里面

结果:

1

11.运算符

算术运算符:

<?php
$a = 1;
$b = 2;
$a + $b;// 加法运算 3
$a - $b;//减法运算 -1
$a * $b;//乘法运算 2
$a / $b;//除法运算 0.5
$a % $b;//取余 2
-$a;//取反 -1
$c = "hello";
$d = "world";
$c.$d;//合并字符串 helloworld
?>

赋值运算符:

<?php
$a = 3;
$b = 2;
$a = $b;//$a = 2
$a += $b;//$a = 5
$a -= $b;//$a = 1
$a *= $b;//$a = 6
$a /= $b;//$a = 1.5
$a %= $b;//$a = 1

递增/递减运算符:

$b = 2;
$a = ++$b;//$a = 3
$a = $b++;//$a = 2
$a = --$b;//$a = 1;
$a = $b--;//$a = 2

比较运算符:

$a = 1;
$b = "1";
$a == $b;// 比较数值,等于返回true,反之返回false
$a === $b;//比较类型和数值,等于返回true,反之返回false
$a != $b;//比较数值是否不等于,不等于返回true,反之返回false
$a <> $b;//比较数值是否不等于,同上
$a !== $b;//比较数值和类型是否不等于,不等于返回true,反之返回false
$a < $b;//比较$a是否小于$b,小于返回true,反之返回false
$a > $b;//比较$a是否大于$b,大于返回true,反之返回false
$a <= $b;//比较$a是否小于等于$b,小于等于返回true,反之返回false
$a >= $b;//比较$a是否大于等于$b,大于等于返回true,反之返回false

逻辑运算符:

a and b;//a,b都为true,则返回true,相当于a && b
a or b;//a,b至少有一个为true,则返回true,相当于a || b
a xor b;//a,b仅有一个为true时,则返回true

12.判断

1.if语句
如果条件为真,则执行代码

<?php
if(1 < 10){
        echo "1<10"//if(条件){要执行的代码)
}
        ?>
}

2.if....else....语句
如果条件为真,则执行if处的代码
其他情况,执行else处代码

<?php
if(1 < 10){
        echo "1 < 10";//if(条件){要执行的代码}
}
else{
        echo "1 >= 10";//else{要执行的语句)
}
?>

3.if....elseif.....else......语句
如果if条件为真,则执行if处代码
如果elseif条件为真,则执行elseif处代码
其他情况,执行else处代码
注意:elseif可以放多个

<?php
$a = 5
if($a < 10){
        echo "a小于10";//if(条件){要执行的代码}
}
elseif($a > 10){
        echo "a大于10";//elseif(条件){要执行的代码}
}
else{
        echo "a等于10";//else{要执行的语句}
}
?>

4.switch语句
如果第一个case为真,则执行第一个case处代码,往后依此类推
所有case都不对,则执行default处代码

<?php
$a=10
switch ($a)
{
case 1:
    echo "1":
    break;
case 2:
    echo "2";
    break;
case 3:
    echo "3";
    break;
default:
    echo "无法识别";
}
?>

结果:

1

13.循环

1.while循环
判断条件是否为真,如果为真则执行代码,执行完毕后再判断条件是否为真

<?php
while(1<10){
        echo "1<10";//while(条件){要执行的代码)//运行后会不停输出1<10
}

?>
2.do....while....循环
先执行一次代码,再判断条件是否为真

<?php
$a = 0
do{
        ++$a
}
while($a < 10);
?>

3.for循环
先执行初始化代码,再判断,如果为真,就执行代码,执行完后再执行增量代码,再判断
注意:初始化代码只执行了一次

<?php
for ($a=10; $i>4; $i--)
{
    echo $a
}
?>

4.foreach循环
foreach是用来遍历数组的

<?php
$a = array("hello","hi")
foreach($a as $b){
       echo $b
}
?>

结果:

hello
hi

14.魔术常量

1.LINE

<?php
echo __LINE__//__LINE__返回当前行数
?>

结果:

2

2.FILE

<?php
echo __FILE__//__FILE__返回当前文件路径
?>

结果:

E:\bob\bob.php

3.DIR

<?php
echo __DIR__//__DIR__返回当前文件所在的文件夹
?>

结果:

E:\bob

免费评分

参与人数 14吾爱币 +12 热心值 +11 收起 理由
lxf0719 + 1 用心讨论,共获提升!
echoaku + 1 + 1 谢谢@Thanks!
dandd134 + 1 + 1 我很赞同!
bjznhxy + 1 + 1 我很赞同!
aoerboquartz + 1 + 1 谢谢@Thanks!
mylaobaby + 1 谢谢@Thanks!
莲花 + 1 + 1 我很赞同!
我是一个外星人 + 1 + 1 谢谢@Thanks!
ZEROCXA + 1 + 1 谢谢@Thanks!
lovlin999 + 1 + 1 谢谢@Thanks!
起飞了 + 1 用心讨论,共获提升!
lgc81034 + 1 谢谢@Thanks!
最新的 + 1 + 1 爱了已收听,想看后续更新
lijun888 + 1 谢谢@Thanks!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

lstxhkz 发表于 2022-4-22 11:30
本帖最后由 lstxhkz 于 2022-4-22 11:32 编辑



返回的求和变量名称搞错了吧?{:1_904:}
<?php
function bob($bob,$hello)//函数声明格式:function+函数名(参数){函数内容}
{
        echo $bob;
        echo $hello;
        $hakcer =  $bob + $hello;
        return $hackerbob;//如果有返回值,加上return
}
echo bob(1,2);//函数调用:函数名(参数)
?>

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
hackerbob + 1 + 1 已更正

查看全部评分

lstxhkz 发表于 2022-4-22 11:27
[Asm] 纯文本查看 复制代码
<?php
define("bob","hello",true);
//常量用define来定义,格式为:define(常量名,常量值,是忽略大小写错误)
//注意,是否忽略大小写错误,如果是true,则不忽略大小写错误,如果是false,则不忽略大小写错误,默认是false
?>


到底忽略不忽略大小写错误呢?

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
hackerbob + 1 + 1 已更正

查看全部评分

qq5649 发表于 2022-4-21 20:55
Rxsmmxs 发表于 2022-4-21 21:12
感恩的心 感谢有你
开创者 发表于 2022-4-21 21:16
分几期讲啊?我也正打算学习,正好是小白
双眼皮的微笑 发表于 2022-4-21 21:21
这个复习起来很舒服。
chip 发表于 2022-4-21 21:29
留个爪子!!!!
xingwenzhiyuan 发表于 2022-4-21 22:03
留下来,好好学习一下php基础
烟十万 发表于 2022-4-21 22:30
走心了!
tsecond 发表于 2022-4-22 02:55
php现在网页上用的比例如何?
wgzjcn 发表于 2022-4-22 04:24
大神,膜拜
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-4-26 11:14

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表