php定义常量的函数是,【php基础】函数/常量定义

function demo(){

//查询传入的参数几个参数

// return func_get_arg();//返回2

//查看参数的值,数组

// print_r(func_get_args());//Array([0]=>1,[1]=>2);

// print_r(func_get_args()[0]);//1;

// print_r(func_get_args(1));//2;

//求数组之和

return array_sum(func_get_args());//3

}

demo(1,2);

//1.PHP7可变形参

function demo2($a,$b,...$c){

return $a+$b+array_sum($c);

}

var_dump(demo2(1,2,3,4,5));

function demo3(){

return array_sum(func_get_args());

}

$arr = [4,5];

var_dump(demo3(5,...$arr));

//2.PHP7新增

var_dump($_GET['user'] ?? 1);

// 等价于

var_dump(isset($_GET['user'])?$_GET['user']:1);

//3.参数类型限制

function demo4(int $a,...$b){

return $a+array_sum($b);

}

echo demo4(2.5,3,4,'10');//19 2.5忽略小数点后面数字

//4.php7限制返回类型

function demo5($a,$b):int

{

return $a+$b;

}

//注意这里是先执行函数再固定返回值

echo demo5(6.2,3.9);//返回10;

//5.常量的定义

define('NATION','中国');//函数

const COURSE = 'PHP';//声明

// define和const的其它区别:

// 1.const不能再条件语句中定义常量,但是define是可以的

// 2.const采用一个普通的常量名称,define可以采用表达式作为名称

// 3.const只能接受静态的标量,而define可以采用任何表达式。

// 4.const本身就是一个语言结构。而define是一个函数。所以使用const速度要快的多。

// 函数内访问外部变量 global

echo '


';

//6.数组排序函数

$arr = [1,9,6,6,10,3,2];

sort($arr);//成功返回true ,失败返回false,升序

rsort($arr);//降序

$arr_assoc = ['2'=>'11','1'=>22];

asort($arr_assoc);//以值升序

ksort($arr_assoc);//以键升序

arsort($arr_assoc);//以值降序

krsort($arr_assoc);//以键降序

usort($arr,function($a,$b){

// return $a-$b;//升序

return $b<=>$a;//降序

});

print_r($arr);

//7.函数引用外部变量

$str = 'php';

// $f1 = function() use($str){

// &引用地址

$fun = function() use(&$str){

$str = 'js';

return $str; //返回 'js';

};

$fun(); //返回 js

echo $str; //返回js

echo '


';

function sum($a,$b){

return $a+$b;

}

//回调方式调用函数

echo call_user_func("sum",6,8);//14

echo call_user_func_array("sum",[6,8]);//14

echo '


';

class A

{

public function func($a,$b)

{

return $a+$b;

}

public static function func1($a,$b)

{

return $a+$b;

}

}

//常规方式

echo (new A)->func(6,8)."


";//14

//回调方式

echo call_user_func_array([(new A),'func'],[6,8]);//14

//调用类中静态方法

echo call_user_func_array(['A','func1'],[6,8]);//14

总结:

1. func_get_args() 返回当前函数的实参数量

2.数组排列 sort($arr) 以值升序,rsort($arr)降序,asort()值升序,ksort()键升序,arsort()值降序,krsort()键降序

3.call_user_func($arr,param1,param2); 回调方式执行函数

4.call_user_func_array($arr,[param1,param2]);

4.1 执行类中动态方法 call_user_func_array([(new Class),'method_name'],[param1,param2]);

4.2 执行类中静态方法 call_user_func_array([('classname'),'method_name'],[param1,param2]);

5.函数引用外部变量  $func = function() use ($var_name){}

6.函数强制返回数据类型 $func = function() :int{}

7.常量的定义:define('VAR_NAME','value'); const VAR_NAME = value;

8. define/const 的区别:

1.const不能再条件语句中定义常量,但是define是可以的

2.const采用一个普通的常量名称,define可以采用表达式作为名称

3.const只能接受静态的标量,而define可以采用任何表达式。

4.const本身就是一个语言结构。而define是一个函数。所以使用const速度要快的多。

PHP7新学特性

1.  $a??$b 的用法 等同于 isset($a)?isset($a):$b;

2. 可变形参  function demo($a,$b,..$c)//注意只能写 三个 .  传值时可传递多个实参

标签:function,arr,const,常量,define,func,return,php,定义

来源: https://www.cnblogs.com/baboben/p/12019914.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值