1.简单函数
     函数四要素:返回类型,函数名,参数列表,函数体

function Show()
{
      echo "hello";
}
Show();         输出了hello

2.有返回值的函数
function Show()
{
     return "hello";
}
echo Show();

 3.有参数的函数
function Show()
{
     echo $a;
}
Show("你好");

4.可变参数的函数
function Sum()
{
     $attr=func_get_args();      获取用户传的参数,会返回一个数组
     var_dumo($attr);
}
Sum(1,2,3);        这个方法可以动态的获取参数的个数

function Sum()
{
      $attr=func_get_args();
      $n=func_num_args();

$sum = 0;
for($i=0;$i<$n;$i++)
{
     sum +=$attr[$i];
}
echo $sum;

Sum(1,2,3);          做了个累加,数量是可以完全变化的,动态获取

数组 是专用来存储的一个结构
$attr = array(1,2);        括号里可以写参数
$attr1 = [1,2,3,4,5];
$attr2[1]="hello";
var_dump($attr);

1.索引数组

$attr = array(1,2,3);
var_dump($attr);

2.关联数组
$attr1 = array("one"=>1,"two"=>2,"3"=>3);
var_dump($attr1);
echo $attr1[3];       自动转换类型

特点:
1.数组里面可以存储任意类型数据
2.数组存储的时候并不是在内存里面开辟一块连续的区域存储

遍历数组
1. for循环遍历 关联数组不能用for循环,只能遍历索引数组

$attr1 = array("one"=>1,"two"=>2,"3"=>3);
for($i=0;$i<count($attr);$i++)
{
      echo $attr[$i]."<br>";
}

2. foreach 遍历 索引,关联都可以遍历
foreach($attr1 as $v)
{
     echo $v."<br>";
}

解析变量 同时遍历索引和值
foreach($attr1 as $k=>$v)
{
      echo "{$k}--{$v}<br>";
}
3.each()和list()配合着遍历数组
var_dump(each($attr1));    取数组里面当前指针指向的元素

list($a,$b,$c)= $attr;      将右侧数组里面的元素赋值给参数列表里面的变量
echo $a;

怎么配合着遍历数组?

list($k,$v) = each($attr1));

echo $k;

while(list($k,$v) = each($attr1))
{
      echo"{$k}--{$v}<br>";
}

4.使用指针的方式遍历数组

echo current($attr1);     取指针指向的当前元素的value值
echo key($attr1);          取指针指向当前元素的key
echo next($attr1);        将指针向下调一个
echo prev($attr1);        将指针向上调一个
echo end($attr1);         将指针调向最后一个元素
echo reset($attr1);       将指针复位

用以上方法来遍历数组
for ($i=0;$1<count($attr1);$i++)
{
       echo key($attr1);
       next($attr1);
}

do
{
       echo key($attr1);
}
while(next($attr1))

04-25 02:15