1.基本形式
//PHP底层语言是C语言,因此很像
/*基本操作*/
/*注释内容*/
$a=1;//变量赋值
$b="aa";//变量赋值
unset($a);//删除变量
define("AA","smile");//常量赋值
define("BB",1);//常量赋值
const CC = "smile";//常量赋值
const DD = 1;//常量赋值
"<br>"//换行不带线
"<hr>"//换行带线
/*预定义变量*/
/*$_GET 获取以get提交的数据
* $_POST 获取以post提交的数据
* $_REQUEST 获取以get和post提交的数据
* $_GLOBALS PHP中所有的全局变量
* $_SERVER 服务器信息
* $_SESSION session会话数据
* $_COOKIE cookie会话数据
* $_ENV 环境信息
* $_FILES 用户上传的文件信息
* */
/*系统常量*/
/*
* PHP_VERSION PHP版本号
* PHP_INT_SIZE 整形大小
* PHP_INT_MAX 整形能表示的最大值
*/
/*魔术常量*/
/*
* __DIR__ 当前被执行脚本所在电脑的绝对路径
* __FILE__ 当前被执行脚本所在电脑的绝对路径(带自己文件名字)
* __LINE__ 当前所属的行数
* __NAMESPACE__ 当前所属命名空间
* __CLASS__ 当前所属类
* __METHOD__ 当前所属方法
*/
/*简单数据类型👇*/
int//整形,系统分配4个字节存储,表示整数类型(有前提)
float//浮点型,系统分配8个字节存储,表示小数和整形存不下的整数
string//字符串型,系统根据实际长度分配,引号表示字符串
bool//布尔类型,布尔类型只有2个值true和false
/*复合数据类型*/
object//对象类型,存放对象(面向对象)
array//数组类型,存储多个数据(一次性)
/*特殊数据类型*/
resource//资源类型,存放资源数据(PHP外部数据,如数据库、文件)
NULL//空类型,无法运算
/*类型转换*/
//自动转换
//强制转换在变量面前+ (目标数据类型)
/*其它类型转数值
*布尔true为1,布尔false为0
*以字母开头的字符串为0
*以数字开头的字符串取到碰到字符串为止(不会同时包含2个小数点)
*/
/*运算符*/
+-*/%.
"$b1"."$b2"//.相当于字符串拼接
/*进制*/
$a2 = 120;//无
$b2 = 0b110;//0b
$c2 = 0110;//0
$d2 = 0x110;//0x
/*错误抑制符*/
//@
$aa2 = 10;
$bb2 = 0;
echo @($aa2 / $bb2);
/*例子*/
$a1 = "1.1.1abc";
$b1 = "abc1.1.1";
echo $a1 + $b1, "<br>";//1.1
echo (int)$a1, " ", (float)$b1, "<br>";//1 0
//不要用浮点类型进行精细运算
/*位运算*/
& //与 11得1,否则为0
| //或 有1得1,否则为0
~ //取反
^ //异或 相同为0,不同为1
<< //左移,右边补0
>> //右移,左边正数补0负数补1
//位运算结束后要把补码转换成原码(取反~)
2.文件处理
/*文件处理*/
//文件包含
<?php
include "include1.php";//文件加载
include_once "include2.php"//文件加载一次
require "include3.php"//错误就不再执行
echo $a,PI;
//文件加载路径
/*
* 1.绝对路径,不易出错但是效率低
* 从磁盘根目录开始(本地绝对路径)
* Windows C:/路径/PHP文件
* Linux /路径/PHP文件
* 从网站根目录开始(网络绝对路径)
* / 相对于网站主机名字对应路径
* Localhost/index.php
* 2.相对路径,易出错但是效率高
* 从当前文件所在目录开始的路径
* .或./ 表示当前文件夹
* ../ 上级目录
*/
include_once "E:\wamp\www\php\study2.php";//例子
//神代码👇👇👇
header('Content-type:text/html;charset=utf-8');//处理脚本让浏览器用指腚字符集解析
//神代码x👆👆👆
//作用域
/*
* 全局变量不能在函数中使用
* 局部变量只能在函数中使用
* 超全局变量必须使用数组方式
*/
//超全局变量
//闭包
function bibao()
{
$name = 1;
$innerfunction = function () use ($name) {
echo $name;
};
$innerfunction();
}
bibao();
//php嵌套
//php替代语法
{ //:
} //end+起始标记;
3.常用函数:
//输出函数
//echo
$aaa2="hahah";
$bbb2=123;
echo $aaa2."string1"."$bbb2"."<br>";//hahahstring1123
//print_r
print_r($aaa2."string1"."$bbb2"."<br>");hahahstring1123
//var_dump
$f1 = 1.23;
$f2 = 1.23e10;
var_dump($f1, $f2);
//float 1.23
//float 12300000000
//数学函数
max($a,$b);//最大值
min($a,$b);//最小值
rand(st,ed);//前闭后开随机数
mt_rand(st,ed);//效率比rand更高
round($a);//四舍五入
ceil(float);//向上取整
floor(float);//向下取整
pow(num,exp);//次方
abs(int);//绝对值
sqrt();//开平方
//进制函数
$a2 = 120;
$b2 = 0b110;
$c2 = 0110;
$d2 = 0x110;
echo Decbin($a2), " ", Bin2hex($b2), " ", Octdec($c2), " ", Hexdec($d2);
//1111000 36 58 626
//有关函数的函数
//都是统计实参
//判断此函数是否存在
function_exists('函数名')
//获取指定位置的参数
var_dump(func_get_arg(3));
//获取所有参数
var_dump(func_get_args());
//获取参数数量
var_dump(func_num_args());
//文件函数
//错误显示级别
//非常重要
error_reporting(0);
//非常重要
trigger_error("笑死我了你也配", E_USER_NOTICE);
//在生产环境中,一般不显示错误信息,需要把错误保存到日志里,需要在PHP配置文件中或者代码中 (ini_set)设置对应error_log配置项
//日期函数
/*
* Y 4位完整的年份
* m 前导零月份
* d 月份中的第几天
* H 前导零24小时
* i 前导零分钟
* s 前导零秒数
*/
print_r(date("Y-m-d H:i:s") . "<br>");//2021-10-17 04:40:10
print_r(time() . "<br>");//1634445610
print_r(microtime() . "<br>");//0.06304700 1634445610
print_r(strtotime("today 14 hours"));//1634479200
//类型判断
var_dump(is_int($a1));//boolean false
var_dump(is_string($a1));//boolean true
echo Gettype($a1);//string
var_dump(settype($a1, "int"));//boolean true