函数和数组

一、函数
函数三要素:1.函数名2.参数列表3.函数体
1.简单函数

function Show()
{
    echo "hello";
}
Show();

运行结果就是在页面显示hello

2.有返回值的函数

function Show()
{
   return "hello";  //返回值	
}
echo Show();

运行结果就是返回值return中的值

3.有参数的函数

function Show($a)
{
echo $a;
}
Show("你好");

运行结果不是形参,而是实参中的:你好

4.可变参数的函数

function Sum()
{
    $attr=func_get_args();   //获取get 用户传的 参数args: func_get_args();
    $n=func_num_args();    //获取数量func_num_args();

   //遍历参数
    $Sum=0;
   for($i=0;$i<$n;$i++)
    {
       $Sum +=$attr[$i];

    }
   echo $Sum;
}
Sum(1);   //数值可以换,这样相应的也会变数值

 运行结果就是数值中的值

二、数组
注意:1.可以存储任意类型数据;
2.不是在内存中开辟一块连续的区域存储(在内存中是不连续的)

$attr=array();   //定义空数组
$attr1=[1,2];   //定义数组
$attr2[0]="hello"; //赋值定义数组:0索引赋值“hello” 

A.数组类型:
1.索引数组

$attr = array(1,2,3,4);
echo $attr[2];   //输出索引号所指的值

2.关联数组

$attr1=array("one"=>1,"two"=>2,"3"=>3);   //k是one字符串,value是1值,=> 符合
echo $attr1["one"];  //取值

echo $attr1[3];  //没有问题的,因为可以自动转换类型,所以不会出错

B.遍历数组
1.for循环:只能遍历“索引数组”
//count() 数组长度


2.foreach 遍历:关联数组和索引数组都可以遍历

关联数组:
$attr1=array("one"=>1,"two"=>2,"3"=>3); foreach($attr1 as $a) { echo $a."<br>"; }

索引数组:
$attr = array(1,2,3,4); foreach($attr as $a) { echo $a."<br>"; }

$attr1=array("one"=>1,"two"=>2,"3"=>3); 
foreach($attr1 as $k=>$a)
{
	echo $a="{$k}--{$a}<br>";
}

3.each()和list() 配合遍历 取数组中当前指针指向的元素

$attr1=array("one"=>1,"two"=>2,"3"=>3); 
var_dump(each($attr1));    //第一个元素 "one" 和 1
var_dump(each($attr1));   //第二个元素 "two" 和 2
var_dump(each($attr1));   //第三个元素 "3" 和 3
$attr = array(1,2,3,4);
list($a,$b,$c)=$attr;   //赋值,赋的是attr数组中的数值 list方法是在等号左侧
echo $a;

4.使用指针方式

//指针位置没有变
//current(); //取指针指向的当前元素的value值
//key(); //取指针指向的当前元素的key值


//变指针位置
//next(); //执行一次,就向下调一个

//prev(); //执行一次,就向上调一个

//end(); //指针直接调到最后

//reset(); //指针复位

原文地址:https://www.cnblogs.com/nuanai/p/6148663.html