php详解之break,continue,forEach,函数,作用域,include,require,array

break,continue,forEach

break:遇到break,循环就直接终止掉
continue:遇到continue,停止本次循环,直接进行下一次循环

<?php
   //跳出循环
//  for($i=0; $i<10; $i++){
//  	if($i == 4){
//  		continue;
//  	}
//  	echo $i."<hr/>";
//  }
	//结束循环
	 for($i=0; $i<10; $i++){
    	if($i == 4){
    		break;
    	}
    	echo $i."<hr/>";
    }
	 
	 //forEach :用来遍历数组
	 $arr = ["北京","上海","广州","深圳"];
	 //用for循环遍历数组
	 //获取数组长度
//	 echo count($arr);
//	 for($i=0; $i < count($arr); $i++){
//	 	echo "$i => $arr[$i]"."<hr/>";
//	 }

	//推荐使用forEach遍历数组
	/*
	 * forEach(数组 as 值){
	 * 直接输出使用值}
	 * forEach(数组 as 键 => 值){
	 * 	使用数组的键和值
	 * }
	 */
//	foreach($arr as $value){
//		echo $value."<hr/>";
//	}
	
	foreach($arr as $i => $value){
		echo $i."".$value."<hr/>";
	}

?>

函数

一个可以封装复用的代码段

<?php
/*
 * function 函数名{
 *   执行代码段
 * 	返回值 
 * }
 * 注意php的函数名不区分大小写
 * php函数有默认值(在没有传递参数时,也能使用某个值进行运算,这个值就称为默认值)
 * php函数也可以进行引用传参,将函数变量与函数内部的计算关联起来
 */
// function show(){
// 	echo "show show";
// }
 show();
//SHOW();
//定义一个参数,参数有a和b,函数功能输出a和b的和
//function total($a,$b){
//	echo$a + $b;
//}
//total(10e2,10);
//定义一个参数,参数有a和b,函数功能是返回a和b的和
//function total($a,$b){
//	return $a + $b;
//}
//$sum = total(10e2,10);
//echo $sum;//210
//函数默认值:在没有传参是,取默认值,有参数,就取参数值
function total($a,$b=10){
	echo $a + $b;
}
//total(10);
total(10, "123abc");//133

//引用传参
function test(&$a,$b){
	$a += $b;
}
$a = 6;
test($a,10);
echo $a;//16
?>

作用域

<?php
	/*
	 * 由于函数的存在,函数内部是一个独立的空间,这个空间就称为函数的局部作用域
	 * 除了函数以外的空间,就称为全局作用域
	 * 由于作用域不同,将变量分为:全局变量和局部变量
	 * 全局变量:定义在全局作用域的变量
	 * 局部变量:定义在局部作用域的变量
	 */
	
//	 $a = 10;
//	 function fn(){
//	 	echo $a;
//	 }
//	 fn();//error
	 
	//如何在局部作用域里使用全局变量  
//	  $a = 10;
//	 function fn($a){
//	 	echo $a;
//	 }
//	 fn($a);//error

	//方法1:使用超全局变量$GLOBALS
	$a = 10;
//	function fn(){
//		$GLOBALS['a'];
//	}
//	fn();//10
	
	//方法2:传参
//	function fn($test){
//		echo $test;
//	}
//	fn($a);//10

	//方法3:使用关键字 global
//	function fn(){
//		global $a;//声明所有的全局变量a
//		echo $a;
//	}
//	fn();

//局部变量:声明周期,从声明开始,到函数结束
//function fn(){
//	$b = "hello world";
//	$b .="&nbsp;&nbsp;hhhhh";
//}
//echo $b;//Error

//如何保存局部变量使其不在函数结束时清除
//js里使用闭包
//php里使用关键字static
//这中变量称为静态变量

//function fn(){
//	$i = 0;
//	$i++;
//	echo $i."<hr/>";
//}
//fn();//1
//fn();//1
//fn();//1

//function a(&$a){
//	$a*=10;
//}
//$b = 10;
//a($b);
//echo $b;//100

//function fn(){
//	static $i = 0;
//	$i++;
//	echo $i."<hr/>";
//}
//fn();//1
//fn();//2
//fn();//3

$a = 10;
$b = 100;
$c = 15;

function test(){
	global $c;//申明为全局变量
	static $d = 25;
	 $GLOBALS["a"] +=$GLOBALS["b"] + $GLOBALS["c"];
	 $d += $c;
	 echo $GLOBALS["a"]." ";
	 echo $d;
}
test();
test();

?>

include,require

<?php
/*
 * 伪类方便快捷的开发以及提高代码复用和代码维护性,往往会将一些复用的代码放在单独的文件上面,然后在需要的时候导入进来使用、
 * 导入文件方法;
 * include
 * include_once
 * require
 * require_once
 * 区别:带once只有导入第一次是生效的
 * 带require的会在所导入文件出错时报错,并阻止下面的代码的运行
 * 带include的仅会在所导入文件出错时报警,不影响下面无关代码的指向
 * @:御制符。在某行出错时,可以使用其阻止报警告
 */
// include "head.html";
// echo "cxxxxxx";
// include "foot.html";
require "test.php";
echo $a;


?>
<!DOCTYPE html>
<html lang="zh">
<head>
	<meta charset="UTF-8" />
	<meta name="viewport" content="width=device-width, initial-scale=1.0" />
	<meta http-equiv="X-UA-Compatible" content="ie=edge" />
	<title>Document</title>
</head>
<body>
	<?php require "head.html"?>
	<strong>啊哈哈哈哈哈哈哈</strong>
	<?php require_once "foot.html"?>
</body>
</html>

array

<?php
//数组
/*
 * 用于存储多个键值对组合的有序集合
 * 索引数组和关联数组
 * 索引数组:下表为数字的数组
 * 关联数组:下标为字符串
 */
 //创建方法一:array函数创建
 //索引数组
// $arr = array("北京","上海","广州","深圳");
// echo "<pre>";
// print_r($arr);
// echo "</pre>";	

//关联数组
//$arr = array("魅力之都" => "上海","火炉城市" => "重庆","梦幻花城" =>"广州");
//echo "<pre>";
//print_r($arr);
//echo "</pre>";
//echo $arr["火炉城市"];

//方法二:字面量
//$arr["魅力之都"] = "上海";
//$arr["火炉城市"] = "重庆";
//$arr["梦幻花城"] = "广州";
//echo "<pre>";
//print_r($arr);
//echo "</pre>";

//方法三:range函数生成索引数组
//$arr = range(1,10);
//echo "<pre>";
//print_r($arr);
//echo "</pre>";

$arr = range("A","a");
//echo "<pre>";
//print_r($arr);
//echo "</pre>";

//数组常用的函数:print_r\count\unset\in_array
//if(in_array("Z", $arr)){
//	echo "在数组中";
//}else{
//	echo "不在数组中";
//}

//数组和字符串(具有明显分割符)的转换与(js中的join,split)
//implode:将数组以间隔符拼接成字符串
//$arr = [1,2,3,4];
//$str = implode("=", $arr);
//echo $str;

//explode:将字符串以分隔符分成数组的每一项
//$str = "1/2/3/4/5/6";
//$arr = explode(("/"), $str);
//print_r($arr);


//数组排序
/*
 * sort,rsort:索引数组的排序,前者为升序,后者为降序
 * ksort,krsort:关联数组的排序,前者为升序,后者为降序
 * asort,arsort:关联数组的值排序,与上同
 * 
 */
// $arr = ["orange","apple","bananer","oa"];
// rsort($arr);
// echo "<pre>";
// print_r($arr);
// echo "</pre>";

//$arr = array("a" => "english","c" => "chinese","b" => "French");
//ksort($arr);
//echo "<pre>";
//print_r($arr);
//echo "</pre>";


//用一个数组分别展示两个人的信息
/*
 * 第一个:名字是张三,年龄20,性别:男
 * 第二个:李四  33  女 
 */
 $arr = array(
 	array("name" => "张三","age" => 29,"sex" => "男"),
 	array("name" =>"李四","age" => 33,"sex" => "女")
 );
// echo "<pre>";
// print_r($arr);
// echo "</pre>";

//遍历数组,并输出每个人的名字
foreach($arr as $value){
	foreach($value as $k => $v){
		echo $k."=>".$v."<hr/>";
	}
}

/*
 *     =>       一般用于数组的 键=>值
 *
 *	   ->    一般用于对象的 对象->对象属性 和 对象->对象方法 
 */
 
 
?>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值