首页 > 编程语言 >PHP 基础

PHP 基础

时间:2023-05-19 21:57:49浏览次数:36  
标签:__ 变量 基础 echo 运算符 PHP 函数

<?php

__FUNCTION__:获取函数名

标记和注释

<?php
echo 'hello world';
?>

/* 注释 */
// 注释

语法结束符

<?php

?>

<?php

变量

// 定义变量使用 $ 关键字
$a = 1;

// 访问变量
echo $a;

// 修变量
$a = 2;

// 删除变量 使用unset关键字
unset(变量名);

变量命名规则

  1. $开始
  2. 字母数字下划线

  • 预定义变量:系统定义的变量

    $_GET:获取所有表单以get方式提交的数据
    $_POST:POST提交的数据都会保存在此
    $_REQUEST:GET和POST提交的都会保存
    $GOLBALS:PHP中所有的全局变量
    $_SERVER:服务器信息
    $_SESSION:session会话数据
    $_COOKIE:cookie会话数据
    $_ENV:环境信息
    $_FILES:用户上传的文件信息
    
  • 可变变量:一个变量保存的是另一个变量的名

变量传值

  • 值传递

    <?php
       
    $a = 1;
    $b = $a;	//值传递
    $a = 2;
    echo $a,$b;	//1,2
    
  • 引用传递

    <?php
       
    $a = 1;
    $b = &$a;	//引用传递
    $a = 2;
    echo $a,$b;	//1,2
    

常量

常量的定义

  • 使用define('常量名',常量值)
    • define('PI',3.14)
  • 使用const关键字定义
    • const PI = 3.14

命名规则

  • 不能使用$
  • 字母数字下划线组成,不能数字开头
  • 通常是大写字母为主

系统常量

PHP_VERSION:php版本号
PHP_INT_SIZE:整型的大小
PHP_INT_MAX:整型能表示的最大值(PHP中整型是允许出现负数:带符号)
  • 特殊常量:魔术常量
__DIR__:当前被执行的脚本所在电脑的绝对路径
__FILE__:当前被执行的脚本所在的电脑的绝对路径
__LINE__:当前所属的行数
__MAMESPACE__:当前所属的命名空间
__CLASS__:当前所属的类
__METHOD__:当前所属的方法

数据类型的分类

  • 基本数据类型
    1. 整型:int/interger
    2. 浮点型:float/double
    3. 字符串型:string
    4. 布尔类型:boolean
  • 复合数据类型
    1. 对象类型:object
    2. 数组类型:array
  • 特殊数据类型
    1. 资源类型 :resource
    2. 空类型:NULL

数据类型转换

  • 自动转换

  • 手动转换

    <?php
    
    echo (float)$a;
    

类型判断

<?php

is_int($a);
is_string($b);

// gettype(变量名) 查看数据类型
// settype(变量名,类型) 设定数据类型,会直接改变数据本身

整数类型进制简介

$a = 100;	//十进制
$b = 0b100;	//二进制
$c = 0100;	//八进制
$d = 0x100;	//十六进制

整数类型进制转换

浮点型和布尔型

  • 浮点型
  • 布尔类型
    • true
    • false
empty()		//判断数据的值是否为空
isset()		//判断是否存在
is_null()	//判断是非为空

运算符

  • 赋值运算符

    • =
  • 算术运算符

    • +
    • -
    • *
    • /
    • %
  • 比较运算符

    • >
    • <
    • >=
    • <=
    • ==
    • !=
    • ===
    • !==
  • 逻辑运算符

    • &&
    • ||
    • !
  • 连接运算符

    • .
    • .=
  • 错误抑制符

    • @($a / 0)
  • 三目运算符

    • $a = 1+1==2 ? 2 : 3
  • 自操作运算符

    • ++
    • --
  • 衍生符号

    • +=
    • -=
    • *=
    • /=
    • %=

计算机码、位运算符、运算符

计算机码

  • 原码
  • 反码
  • 补码

分支结构

<?php

// if分支语句
if(2 > 1){
    echo true;
}else{
    echo false;
}

// switch分支
switch(a){
    case 1:
		echo 1;
		break;
    case 2:
        echo 2;
		break;
     default:
        echo 'error';
        break;
}

循环结构

<?php

// for 循环
for($i=1;$i<11;$i++){
    echo $i;
}

// while 循环
$i = 1;
while($i<11){
    echo $i;
    $i++;
}

// do-while 循环
$i = 1;
do{
    echo $i;
    $i++;
}while(i<10)

// foreach 循环
$arr = [1,2,3,4,5];
foreach($arr as $value){
    echo $value;
    echo "_";
}

文件包含

  • include
  • include_once
  • require
  • require_once

文件加载路径

  • 绝对路径
  • 相对路径

文件嵌套包含

函数

<?php

function test1(){
    echo "test1";
}
test1();	// test1
  • function

  • 形参和实参

  • 形参默认值

    • default value
    <?php
    
    function sum($num1 = 0,$num2 = 0){
        echo $num1 + $num2;
    }
    sum(10,20);	//30
    sum(); //0
    

函数传参---引用传值

<?php

function sum($num1,&$num2){
    echo $num1*$num1;
    echo $num2*$num2;
}
$num1 = 10;
$num2 = 5;
sum($num1,$num2);	// 100 25
echo $num1."<br>".$num2;	//10 25

函数体

作用域

静态变量

使用static关键字

可变函数

<?php

$func = function(){
    echo "hello world";
}
$func();

匿名函数

<?php

$func2 = function(){
    echo "hello world";
};
$func2();

伪类型

常用系统函数

输出
print()
print_r()

时间
date()	
time()	获取当前时间的时间戳
microtime()	获取微秒级别的时间

常用数学函数

max()
min()
rand(10,20)	//指定10-20的随机数整数
mt_rand()	// 同rand() 不过效率更高
round()	// 四舍五入
ceil()
floor()
pow(2,3)	// 8
abs()

  • 有关函数的函数

错误处理

错误处理:提示错误

错误分类

  • 语法错误(parse error)
  • 运行时错误(runtime error)
  • 逻辑错误()

错误代号

错误触发

错误配置

自定义错误处理

trigger_errors()


字符串定义

  • 单引号
  • 双引号
  • nowdoc 结构化字符串
  • heredoc 结构化字符串

字符串转义

\'
\"
\r
\n
\t
\$

标签:__,变量,基础,echo,运算符,PHP,函数
From: https://www.cnblogs.com/sroot/p/17416396.html

相关文章

  • SQL 基础
    SQL基础条件查询语法格式:select字段1,字段2...from表名where条件;执行顺序:先from,然后where,最后select.<,>,<=,>=,<>,!=,and,between…and….,isnull,isnotnull,or,in,notin,and和or联合使用(in等同于or)模糊查询like函数字符函数:length函数selectlength('j......
  • python基础07
    字符串的内置方法(较多,重要)lower&upperold_code='KeViN'print('验证码:%s'%old_code)s=input('请输入验证码:>>>').strip()ifold_code.lower()==s.lower():#lower改为全小写print('验证成功')elifold_code.upper()==s.up......
  • 以圆类Circle为基础设计球类Sphere
    以点类Point为基类公有派生圆类Circle,并以圆类Circle为基类公有派生球类Sphere,main(void)函数完成对其的测试。Point类结构说明:Point类的数据成员包括:①私有数据成员:X坐标x(double型),Y坐标y(double型)。Point类成员函数包括:①有参构造函数Point(double,double)和拷贝构造函......
  • Mysql基础语法
    根据分组,查询最新时间的一条数据-基础语法select*fromtablewhereidin( selectSUBSTRING_INDEX(GROUP_CONCAT(idORDERBYupdate_timedesc),',',1) fromtableGROUPBYunique_key_column);-创建数据库dropdatabaseifexists`syntax_db`;createdat......
  • Linux基础22 进程的优先级nice, 后台进程管理, 系统平均负载, 系统启动流程
    进程的优先级:nice值越高:表示优先级越低,例如19,该进程容易将CPU使用量让给其他进程。nice值越低:表示优先级越高,例如-20,该进程更不倾向于让出CPU。#以设定的优先级启动nice-n-10tail-f/var/log/messages#重新设置一个进程的优先级(调整sshd的优先级)[root@oldboyedu~]#......
  • PHP性能优化工具篇Benchmark类调试执行时间
    这是PHP性能优化系列第二期,如何使用PEAR工具类Benchmark逐行获取代码或函数的执行时间。工欲善其事,必先利其器!如何安装PEAR和Benchmark请参考PHP性能优化系列第一期[PHP性能优化准备篇图解PEAR安装]Benchmark工具类包说明直接下载/package/Benchmark/downloadBenchmark工具类包共......
  • nodejs 解析php的session_decode 的module(session_decode.js)
    文件名:session_decode.js//exports.session_decode=function(){//varmessage="Hellofromtheohaitheremodule";//returnmessage;//};exports.session_decode=function(data){//*example:session_decode('firstName|s:5:&quo......
  • 【ThinkPHP6系列学习-3】模板渲染
    视图功能由\think\View类配合视图驱动(也即模板引擎驱动)类一起完成,新版仅内置了PHP原生模板引擎(主要用于内置的异常页面输出),如果需要使用其它的模板引擎需要单独安装相应的模板引擎扩展。视图相关的配置在配置目录的view.php配置文件中进行定义。通常可以直接使用think\faca......
  • 【ThinkPHP6系列学习-1】下载并部署ThinkPHP6
    一、下载ThinkPHP6在指定目录(www目录)下打开cmd,使用composer下载thinkphp6,命令后面的thinkphp6就是下载的目录名,可以随意修改。composercreate-projecttopthink/thinkthinkphp6二、目录结构下载后,查看目录结构,tp6的目录结构和tp5不同,默认是单应用(只有一个模块),如果需要多应......
  • java中把对象序列化成php序列化的字符串以及把php序列化的字符串反序列化为java对象的
    依赖第三方库phprpc序列化成php格式的字符串很简单,直接调用org.phprpc.util.PHPSerializer.serializer方法就行,有问题的是反序列化php格式的字符串为List或Map对象时,得到的是个AssocArray对象,需要写方法进行转换。通过下面这个方法可以实现转为java对象。publicstati......