学PHP之前简单了解一下环境

php手册

https://www.php.net/manual/zh/index.php

URL地址

格式

http://host[:post][abs_path]

http:// —— 表示通过HTTP协议来定位网络资源

host —— 表示合法的Internet主机域名或者IP地址

port —— 指定一个端口号,可以省略默认的80

abs_path —— 被请求资源的位置

DNS服务器 —— 解析域名
先看本地hosts文件,没有才回去网络这个服务器上去查

本地 hosts 服务

 目录: C:\Windows\System32\drivers\etc 
 
    hosts查看本机的IP 以及服务名

php环境

安装软件

Web服务器 —— Apache等

数据库 —— MySQL 等

PHP应用服务器 —— php ( 执行PHP代码)

流行的生存环境 APache + PHP +MySQL

集成环境

我是菜鸡,自己配置环境太麻烦,直接用别人弄好的,我知道以下三个,可以任选其一,或者另辟蹊径:

PHPstudy —— 听别人说之前这个被爆有后门

xampp

Wampserver

记得改一下端口号,默认是8080,可以查查本机端口占用情况,自定义

访问地址

127.0.0.1 表示 本机电脑

在hosts中可以看到 localhost 等同于 127.0.0.1

集成规则

index.htmlindex.php ,会默认访问index.php

初始

  1. PHP 开始标记 <?php
  2. PHP 结束标志 ?>
  3. 页面最终是由HTML,CSS,JS来展示界面

php脚本中<?php?>之外的内容PHP服务器不解释,可以写前端代码

  1. PHP可以嵌套在HTML代码中,同时在HTML中可以嵌套任意多个<?php?>
  2. php文件结尾可以不需要 ,即 "<?php"
  3. 每行代码要加 “;” 分隔 , PHP 结尾 “?>” 隐含有 ";"
注释
  1. 多行注释 —— /**/
  2. 单行注释 —— //
空白处理

空白字符包括 空格 、 tab制表符、换行,在PHP中无关紧要(注都是英文输入法输入的),可以合理使用增强代码可读性

变量

在PHP程序中 ,使用变量之前是不需要声明的

PHP变量必须使用一个美元符号 $ 后面跟着变量名

变量释放

unset($变量名)
命名规则:
  1. 严格区分大小写
  2. 变量名由字母或者下划线开头,后面可以跟上任意数量的数字 ,字母 或者下划线
  3. 不能数字开头,不能有空格
  4. 可以使用特殊字符,例如:if,for等
可变变量
    <?php
        $good = "well";
        $$good = "hello World!!!";
        echo $well;
    ?>
利用一个变量赋值一个字符串:$good
则$$good 表示 $well
"&" 引用
    <?php
        $a = 100;
        $b = $a;
        $b = 50;
        echo $a;//50
        $b = &$a;
        $b = 80;
        echo $a;//80
        $a = 20;
        echo $b;//20
    ?>

当使用&符号,会绑定两个变量,改变任意一个,另一个也会发生改变

变量类型

var_dump(变量名) 可以输出变量的类型

PHP是弱类型语言,不需要声明类型,直接赋值

  1. 布尔值(bool)
  2. 整型(int)
  3. 浮点型(float)
  4. 字符串 (string)
  5. 数组(array)
  6. 对象(object)
  7. 资源(resource)
  8. NULL
<?php
    $a = true ;//bool(true)
    $a = 100 ;//int(100)
    $a = 3.14159 ;//float(3.14159)
    $a = "hello";//string(5) "hello"
    $a = 'hello';//string(5) "hello"
    $a = [5,true,"H"];//array(3) { [0]=> int(5) [1]=> bool(true) [2]=> string(1) "H" }
    var_dump($a);
    unset($a);
    $a;//NULL
    var_dump($a);
?>
字符串
  1. 单引号
  2. 双引号
  3. 定界符
定界符

<<< 之后提供一个标识符开始,然后是字符串内容,最后是同样的标识符标识结束

注意:标识符的定义与定义变量类似

格式如下:

$a = <<<s
    9654321
s;
//s是自己定义的标识符,同时需要的字符串,不能与标识符在同一行,也就是需要占三行
字符串数据

在字符串中添加数据,需要用双引号或者定界符,同时用大括号包裹数据

<?php
    $a = <<<s
        9654321 
        s;
    $b = 1000;
    $c = '售价{$b}元';//售价{$b}元
    $d = "售价{$b}元";//售价1000元
    $e = <<<w5
        售价{$b}元
    w5;//售价1000元
    echo $c;
    echo $d;
    echo $e;
?>

类型转换

自动转换
  1. bool运算时,true 转化 整型 1 ,false 转化 整型 0
  2. null 运算时,转化为 整型 0
  3. string 与 int 或者 float 运算时,不太可控,尽量减少使用
强制转换

(int) (string) 等,用括号括住自己想要的类型

强制转换不会改变原来变量的数据类型,仅改变输出类型

常量

定义:define(常量名称,常量值);

<?php
    define("www","localhost");
    define('http',"localhost:2562");
    echo www;
    echo http;
?>

defined()函数来检查是否定义某个变量

常量与变量
  1. 常量前没有美元符号($)
  2. 常量只能用defined()函数定义,不能使用赋值语句
  3. 常量可以不用理会常量范围的规则,在任何地方都可以使用(同一个<?php?>内)
  4. 常量被定义就不能被重新定义或者取消定义
  5. 常量值只能是:bool,int,float,string类型
为空

""空字符、NULL、0、false、null的变量、空数组、没有任何属性的对象

预定义常量

PHP已经定义完成的

所有的预定义源码:

echo print_r(get_defined_constants());

其中以 **__**开头的预定义常量,又叫做魔术常量( 网页不同,也会随之改变 )

魔法常量(八个)不区分大小写

__LINE__	文件中的当前行号。
__FILE__	文件的完整路径和文件名。
__DIR__	文件所在的目录。
__CLASS__	类的名称
__METHOD__	类的方法名
__TRAIT__	Trait 的名字
__NAMESPACE__	当前命名空间的名称(区分大小写)
<?php
    echo __LINE__;//66
    echo __File__;//D:\PHPStudy\phpstudy_pro\WWW\PHP\demo1\1.php
    echo __dir__;//D:\PHPStudy\phpstudy_pro\WWW\PHP\demo1
?>

运算符

算数运算符

加(+) 减(-) 乘(*) 除(/) 取余(%) 自加(++) 自减(–)

字符串运算符

" . ",连接字符串,

当存在算式时先计算出结果,然后在字符串连接

    <?php
    // 运算符
        $a = -5;
        $b = true;
        echo -$a."good".($a + 12).$b;//5good71
    ?>
赋值运算符

二元运算符

= 、 += 、 -= 、 *= 、 /= 、%= 、 .=

<?php
// 字符串运算符
    $a = -5;
    $b = true;
    $a .= $b;
    echo $a;//-51,字符串
?>
比较运算符

结果为bool值

< 、 > 、>= 、 <= 、 == 、 === 、 != 、 !== 、 <>

=== 表示 全等于,数值和类型都相同

!== 表示 不全等于

<> 表示 不等于

逻辑运算符

结果为bool值

&& 、 || 、 !

and 、 or 、 xor

&& 与 and 表示 逻辑与,符号两边都为非空,才返回true,又一边,为空,就返回false,左边为空,直接返回false,不会处理右边内容

    <?php
        $a = 5;
        var_dump( 5<2 && ++$a);//false
        var_dump( 5>2 && $a);//true
        echo $a;//5
    ?>

|| 与 or 表示 逻辑或,只要有一边不为空,就返回true,当左边为true,则不会执行右边内容

    <?php
        $a = 5;
        var_dump( 5<2 || ++$a);//true
        var_dump( 5>2 || $a);//true
        echo $a;//6
    ?>

xor 表示 逻辑异或,左右两边一样返回false,否则true

    <?php
        var_dump((5>2) xor (5<2));//true
        var_dump(0 xor (5<2));//false
    ?>

! 表示 逻辑非,也就是取法,true的内容变为false

    <?php
        var_dump(!0 xor (5<2));//true
        var_dump(0 xor (5<2));//false
    ?>
位运算符
其他运算符

三元运算符 —— ? :

反引号 ` ` —— 获取命令行内容(存在跨平台差异)

    <?php
        $a =` php -v `;
        //PHP 7.3.4 (cli) (built: Apr 2 2019 21:57:22) ( NTS MSVC15 (Visual C++ 2017) x64 ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.3.4, Copyright (c) 1998-2018 Zend Technologies
        echo $a;
    ?>
cmd中命令,php -v是用来查看PHP版本,以及本地安装是否成功

@ —— 屏蔽错误

<?php
    echo @$b;
?>

=> —— 数组(array)中使用 , 键(key) => 值(value)对

-> —— 对象(object)中使用

instanceof —— 用于确定一个 PHP 变量是否属于某一类 class 的实例

运算符优先级
结合方向运算符附加信息
clone newclone 和 new
**算术运算符
++ – ~ (int) (float) (string) (array) (object) (bool) @类型、递增/递减、错误控制
instanceof类型
!逻辑运算符
* / %算术运算符
+ - .算术运算符 和 字符串运算符
<< >>位运算符
< <= > >=比较运算符
== != === !== <> <=>比较运算符
&位运算符 和 引用
^位运算符
|位运算符
&&逻辑运算符
||逻辑运算符
??null 合并运算符
? :三元运算符
= += -= *= **= /= .= %= &= = ^= <<= >>=赋值运算符
yield fromyield from
yieldyield
and逻辑运算符
xor逻辑运算符
or逻辑运算符
逗号运算符
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值