目录
Lession 01 php 基础 1. php 基础2. php 变量3. php 单引号 和 双引号区别4. 数据类型5. 数据类型转换6. 常量7. 运算符8. 为 false 的几种情况(条件判断)9. 流程判断10. 循环11.1 函数11.2 函数的 行参 和 返回值12. 常用函数phpinfo():输出版本号
echo:输出文本php.ini:php的配置文件命名变量必须用 $ 开头
严格区分大小写
不能以特殊字符和数字开头(可以用下划线)
unset:销毁变量
isset():判断变量是否存在 isset(var1, var2)
普通变量的作用域:函数 内部作用域 和 外部作用域 是不相关的
<?php // 变量的作用域 $test = 'hello'; function test () { echo $test; // 报错, 变量未定义 } test();单引号不识别变量,双引号识别变量
单引号不会转义特殊字符, 双引号可以
<?php // 单双引号区别 $name = '张三'; $age = 18; $sex = 'man'; echo "$name"; // 张三 echo '$name'; // $name // 结论:单引号不解析变量,双引号解析变量 echo "\n"; // 换行 echo '\n'; // \n // 结论:单引号不会转义特殊字符, 双引号可以 ?>变量和字符串,用一个点 . 拼接起来双引号可以将变量和字符串拼接起来 "{$name}好好学习" -> "张三好好学习"
双引号 套 单引号 套 变量,输出外面带单引号的变量 "'$name'" -> '张三'单引号效率比双引号高
定义常量:define('abc', 'abc');
常量注意点:
常量可以直接用大写字母和下划线定义,不必加$符号赋值只能为标量赋值只能为标量常量不能写到字符串中判断常量是否被定义:defined('常量名')
系统常量:
__FILE__:找你的文件
__LINE__:获取代码所在的行数
__DIR__:找到当前文件的目录
PHP_OS:获取系统信息
PHP_VERSION:获取版本信息
__FUNCTION:获取当前函数名
M_PI:圆周率
了解:
__MHTHOD__:获取当前成员方法名
__NAMESPACE__:获取当前命名空间的名字__TRAIT__:获取当前 TRAIT 名字(多继承)__CLASS__:获取当前类名
与其他语言差不多
与其他语言基本相同
拓展:
随机数:mt_rand(1, 10);与其他语言一样,循环内的变量不是局部变量
定义:function name() {}
函数分为类库函数 和 自定义函数
类库函数不可再自定义
行参可设置默认值,与 es6 类似
没设置默认参数时,实参少了会报错
函数不区分大小写
<?php function Name($name = '刘程', $sex = '男') { echo '我是:'.$name.' . 性别:'.$sex; return true; } $temp = name('liucheng'); // 我是:liucheng . 性别:男 echo '<br />'.$temp; // 返回值 true 变量和作用域看标题2 变量行参的类型约束(重要)
行参约束类型后,函数会将传入的数据转换为对应的数据,若无法转换,将报错。
<?php // 约束函数行参的类型 function test(string $name, int $num) { echo gettype($name).'<br />'; echo gettype($num).'<br />'; } test('liucheng', 20); test(520, 20); // test(520, "a"); // 报错, 'a' 不是整数变量括号后面加一个 :string , 约束其返回值为 string ,不是 string 就会报错
<?php // 约束函数返回值 function test(string $name, int $num):string { return $name.$num; } print_r(test('liucheng', 20).'<br>'); print_r(test(520, 20).'<br>'); echo test(520, "a").'<br>';不用设置行参,即可获取传入的参数
func_get_args() : 获取传入的参数,组成数组。func_get_arg(n) : 获取对应下标位置的参数 <?php // 可变参数 function test() { $temp = func_get_args(); echo func_get_arg(1).'<br>'; return $temp; } print_r(test('liucheng', 20)); // 输出:Array ( [0] => liucheng [1] => 20 )顺序
str_shuffle:随机打乱字符串顺序strrev:倒序排列字符串转换
chr:将 ASCII 码值转换为字符未完待续。。。
转载于:https://www.cnblogs.com/mhxs/p/11222719.html
相关资源:JAVA上百实例源码以及开源项目