zoukankan      html  css  js  c++  java
  • php基础(函数)

    自定义函数

    {echoDrangon() // 执行代码块}
    
    局部动态变量
    	static //局部静态变量,运行完成后并没有被释放掉
    	当有值的时候不再声明
    
    全局变量 
    	global 声明可使用全局变量
    
    值的引用和传递
    	$a = 2;
    	function change(&$c){
    		$c = 5;
    	}
    	change($a);
    	echo $a; //5
    	// & 把$a的地址拿过来,再给与赋值
    	-------------------
    	普通函数定义指向的是栈内存
    	-------------------
    	对象指向的是堆内存
    	$obj = new stdClass();
    	$obj -> a = 3;
    	function change($o){
    		$o -> b = 5;
    	}
    	change($obj);
    	print_r ($obj);
    	// stdClass Object ( [a] => 3 [b] => 5 )
    	-------------------
    	
    参数的默认值
    	function test($a=5, $b=6){
    		echo $a;
    		
    	}
    	test()
    	//5
    	
    可变参数列表
    	func_get_arg — 返回参数列表的某一项 
    	func_num_arg 
    	
    参数的类型
    	function test(callable $a){  //callable 回调类型 || 指定回调类型,如果没有的情况下会报错~!
        $a();
        }
        function callback(){
    	   echo '你好';
        } 
        test('callback'); //你好
    	
    可变函数
    	function test(){
    		echo 'hello';
    	}
    	$func = 'test';
    	if( is_callable($func) ){
    		// 判断是否有这个回调函数
    		$func();
    	}
    	if( function_exists($func)){
    		$func();
    	}
    
    函数潜嵌套
    	function a(){
    		function b(){
    			echo 'hello';
    		}
    	}
    	a();  // 空
    	b(); //hello
    	
    	-------------------------------
    	
    	function a(){
    	$a = '5';   //定义在a()当中,其他函数无法获取
    	function b(){
    		echo $a;
    	}
    	}
    	a();  // 空
    	b(); // 报错
    	
    匿名函数
    	function test(){
        $info = 'hello';
        $say = function ($str) use ($info){  //通过use 得到外层的变量
           echo $info;
           echo $str; 
        };
        $say('hello word');
       }
       test(); 
    

    系统函数

    字母大写
    	
    	strtolower — 将字符串转化为小写 
    	strtoupper — 将字符串转化为大写 
    	ucfirst
    		//将橘子首字母转换为大写
    	unwords
    		//将每个单词的首字母转换为大写字母
    
    字符串替换
    	str_replace
    		$body = 'hello word'
    		str_replace('o','q',$body);
    		//hellq wqrd
    	str_ireplace 
    		忽略大小写
    		
    转换为html实体
    	{htmlspecialchars}
    	
    删除空格
    	ltrim
    		//删除左边的空格
    	$body = ltrim($body);	
    	rtrim
    		//删除右边边的空格
    	trim
    		//开始和结束的位置或者其他
    
    截取字符
    	$rest  =  substr ( "abcdef" , - 1 );     // 返回 "f"
    	$rest  =  substr ( "abcdef" , - 2 );     // 返回 "ef"
    	$rest  =  substr ( "abcdef" , - 3 ,  1 );  // 返回 "d"
    	------
    	strstr — 查找字符串的首次出现 
    	$n = 'hello ';
    	echo strstr($n,'e',false);
    		若为 TRUE , strstr()  将返回 needle 在 haystack 中的位置之前的部分
    		第一次出现的位置开始到结尾的字符串
    	strrchr
    		最后一次出现的位置直到末尾
    	strrev — 反转字符串 
    	strpos — 查找字符串首次出现的位置 
    	md5 
    	str_shuffle — 随机打乱一个字符串
    	explode — 使用一个字符串分割另一个字符串 
    		$array  = array( 'lastname' ,  'email' ,  'phone' );
    

    $com ma_separated = implode ( "," , $array );

    格式化字符串
    	sprintf
    	{$format参数}
    	
    数学函数
    	floor()  //向下
    	ceil() //向下
    	max()  //返回最大
    	min()	//返回最小
    	rand — 产生一个随机整数 
    	mt_rand — 生成更好的随机数 
    	round — 对浮点数进行四舍五入
    		echo  round ( 5.045 ,  2 );     // 5.05
    	number_format — 以千位分隔符方式格式化一个数字 
    	fmod — 返回除法的浮点数余数 
    	
    date函数
    	date_default_timezone_get() //获得时区;
    	echo date('Y年m月d日G时:i分:s秒');
    	time() — 返回当前的 Unix 时间戳
    	time()-86400 //24*60*60 前一天
    	strtotime — 将任何英文文本的日期时间描述解析为 Unix 时间戳 
    		// 日期表达格式
    	microtime — 返回当前 Unix 时间戳和微秒数 
    	microtime(true)  将返回一个浮点数。
    		// 获得改程序运行的时间
    		$start = microtime(true);
    		$num = 0;
    		for ($i=0; $i <10000000 ; $i++) { 
    			$num += $i;
    		}
    		$end = microtime(true);
    		echo $end - $start;
    	uniqid — 生成一个唯一ID 
    		// 获取一个带前缀、基于当前时间微秒数的唯一ID。 
    	getdate — 取得日期/时间信息 
    		//数组类型
  • 相关阅读:
    HDOJ 3547 DIY Cube 解题报告
    一些经典的期望问题

    人生
    BZOJ 4341 [CF253 Printer] 解题报告
    BZOJ 4302 Buildings 解题报告
    OI 回忆录
    PyQt实现测试工具
    PyQt:eg4
    pyQt: eg3
  • 原文地址:https://www.cnblogs.com/ar13/p/8335125.html
Copyright © 2011-2022 走看看