跟随我在oracle学习php(26)

控制脚本执行进度

die(“输出内容”)

含义:终止php脚本的运行(后续代码不再执行),并输出其中的内容

也可以:die(); die;

exitdie的同义词。

die是一种“语言结构”,并非函数,可以不写括号。

echo也是一种语言结构,而非函数:

echo (“abc”);

echo  “abc”;

echo  “abc”, “def”, 123;

 

sleep($n);

含义:让php脚本停止$n秒,然后继续执行。

 

 

 

数组基础

元素

下标

数组长度 count($attr);

For($i = 0;$i<count($attr);$i++)

Foreach(){}

js对数组: for...in{}

数组基础

php中,数组的下标可以是整数,或字符串。

php中,数组的元素顺序不是由下标决定,而是由其“加入”的顺序决定。

 

定义:

$arr1 = array(元素1,元素2,。。。。。 );

array(1,  5,  1.1,  abc,  true,  false); //可以存储任何数据,此时为“默认下标”,

array(2=>1,  5=>5,  3=>1.1,  7=>abc,  0=>true);//下标可以任意设定(无需顺序,无需连续)

array(2=>1,  5,  1=>1.1,  abc,  0=>true)//可以加下标,也可以不加(默认下标),下标分别是:2,3,1,4,0     //默认下标规则:前面已经用过的最大数字下标+1

array(2=>1,  dd=>5,  1=>1.1,  abc,  0=>true)//混合下标,同样遵循默认下标规则

array(-2=>1,  dd=>5,  1.1,  abc,  true); //负数下标不算在整数下标中,而只当作字符下标

//则最好3项的下标是:0, 1, 2

array(2.7=>1,  dd=>5,  1=>1.1,  abc,  0=>true)//浮点数下标为自动转换为整数,且直接抹掉小数

array(2.7=>1,  dd=>5,  11=>1.1,  abc,  true)//纯数字字符串下标,当作数字看待,

//则此时下标为:2, dd, 11, 12, 13

array(2=>1,  dd=>5,  true=>1.1,  abc,  false=>true)//布尔值当下标,则true1false0

array(2=>1,  dd=>5,  2=>1.1,  abc,  true)//如果下标跟前面的重复,则单纯覆盖前面同名下标的值

//此时相当于为:array(2=>1.1,  dd=>5,  abc,  true)

其他形式;

$arr1[] = 1;

$arr1[] = 5;

$arr1[] = 1.1; //直接在变量后面使用[],就成为数组,并依次赋值。

。。。。

$arr2[aa] = 1;

$arr2[bbbcc] = 5;

$arrr2[5] = 1.1;

。。。。。。。。

这种形式写的下标,其实跟使用array语法结构几乎一样。

取值:通过下标。

 

赋值(同定义):

数组的分类

从键值关系:

关联数组:通常是指下标为字符串,并且该字符串大体可以表达出数据的含义的数组。

例:$person = array(

“name” => “小花”,  

“age”=>18,

“edu” => “大学毕业” 

);

索引数组:

通常是指一个数组的下标是严格的从0开始的连续的数字下标——跟js数组一样。

 

从数组层次来分:

一维数组:

就是一个数组中的每一个元素值,都是一个普通值(非数组值)

$arr1 = array(

“name” => “小花”,  

“age”=>18,

“edu” => “大学毕业” 

);

 

二维数组:

一个数组中的每一项,又是一个一维数组。

$arr1 = array(

“name” => array(‘小花’,     ‘小芳’,   ‘小明’, );  

“age”=> array(18,      22,       19),

“edu” => array(“大学毕业”,  ‘中学’,    ‘小学’)

);

 

多维数组:

依此类推。。。

 

多维数组的一般语法形式:

$v1 = 数组名[下标][下标][.....]

 

数组遍历

遍历基本语法

foreach( $arr   as   [ $key  => ] $value ) //$key可以称为键变量,$value可以称为值变量。

{

//这里就可以对$key  $value 进行所有可能的操作——因为他们就是一个变量

//$key 代表每次取得元素的下标,可能是数字,也可以能是字符串

//$value 代表每次取得元素的值,可能是各种类型。

//此循环结构会从数组的第一项一直遍历循环到最后一项,然后结束。

}

 

交换原理:

 

 

foreach 遍历细节探讨

foreach也是正常的循环语法结构,可以有breakcontinue等操作。

遍历过程中值变量默认的传值方式是值传递。

遍历过程中值变量可以人为设定为引用传递:

foreach($arr as $key => &$value){ ... }

键变量不可以设定为引用传递

 

 

foreach默认是原数组上进行遍历。但如果在遍历过程中对数组进行了某种修改或某种指针性操作(就是指前面的指针函数),则会复制数组后在复制的数组上继续遍历循环。

 

 

foreach中如果值变量是引用传递,则无论如何都是在原数组上进行。

数组排序思想介绍

转载于:https://www.cnblogs.com/RighTgraM/p/10892815.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值