<?php

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

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

Show();*/

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

echo Show();*/

//3.有参数的函数

/*function Show($a)
{
echo $a;
}

Show("你好");*/

//4.可变参数的函数
/*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,4);*/

//数组
//$attr = array(1,2);
//$attr1 = [1,2,3,4,5];
//$attr2[0] = "hello";
//$attr2[1] = "world";
//var_dump($attr2);

//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($i=0;$i<count($attr);$i++)
{
echo $attr[$i]."<br>";
}*/

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

/*foreach($attr1 as $k=>$v)
{
echo "{$k}--{$v}<br>";
}
*/

//3.each()和list()配合着来遍历数组//var_dump(each($attr1)); //取数组里面当前指针指向的元素
//var_dump(each($attr1));
//var_dump(each($attr1));

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

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

//4.使用指针的方式来遍历数组
//echo current($attr1); //取指针指向的当前元素的value值
//echo key($attr1); //取指针指向的当前元素的key
//next($attr1); //将指针向下调一个
//next($attr1);
//prev($attr1); //将指针向上调一个
//echo key($attr1);
//end($attr1); //将指针调向最后一个元素
//reset($attr1); //将指针复位

/*for($i=0;$i<count($attr1);$i++)
{
echo key($attr1);
next($attr1);
}*/

/*do
{
echo key($attr1);
}
while(next($attr1))*/
$attr = array(1,2,3);
var_dump($attr);

?>

php函数、php定义数组和数组遍历的更多相关文章

  1. 学习javaScript必知必会(3)~数组(数组创建,for...in遍历,辅助函数,高级函数filter、map、reduce)

    一.数组: 1.js是弱语言,js中的数组定义时:不用指定数据类型.不用功指定数组长度:数组可以存储任何数据类型的数据 2.数组定义的[ ] 的实质: [] = new Array(); {} = n ...

  2. C语言 数组做函数参数不传数组个数的遍历方法

    //数组做函数参数不传数组个数的遍历方法 #include<stdio.h> #include<stdlib.h> #include<string.h> void ...

  3. java 数组声明定义 数组内存分配 数组初始化 数组引用 数组的遍历

    一,数组的定义 Java 中定义数组的语法有两种: 1. type arrayName[]; 2. type[] arrayName;type 为Java中的任意数据类型,包括基本类型和组合类型,ar ...

  4. 编写高质量代码改善C#程序的157个建议[动态数组、循环遍历、对象集合初始化]

    前言   软件开发过程中,不可避免会用到集合,C#中的集合表现为数组和若干集合类.不管是数组还是集合类,它们都有各自的优缺点.如何使用好集合是我们在开发过程中必须掌握的技巧.不要小看这些技巧,一旦在开 ...

  5. php数组声明、遍历、数组全局变量使用小结

    数组的本质:管理和操作一组变量,成批处理,下面为大家介绍下数组的分类.数组的分类及使用说明,感兴趣的朋友可以了解下哈   php教程:数组声明,遍历,数组全局变量  <? /* * 一.数组的概 ...

  6. C#程序编写高质量代码改善的157个建议【16-19】[动态数组、循环遍历、对象集合初始化]

    前言   软件开发过程中,不可避免会用到集合,C#中的集合表现为数组和若干集合类.不管是数组还是集合类,它们都有各自的优缺点.如何使用好集合是我们在开发过程中必须掌握的技巧.不要小看这些技巧,一旦在开 ...

  7. 【C++函数题目】重载求数组中最小值的函数

    题目来源:https://acm.ujn.edu.cn Time Limit: 1 Sec  Memory Limit: 128 MB Description 写一个函数名称为miniElement( ...

  8. array_reduce方法用回调函数迭代地将对数组的值进行操作

    在处理php数组的时候,有一种需求特别的频繁,如下二维数组: $arr = array( 1=>array( 'id' => 5, 'name' => '张三' ), 2=>a ...

  9. OpenJudge计算概论-二维数组右上左下遍历

    /*====================================================================== 二维数组右上左下遍历 总时间限制: 1000ms 内存 ...

  10. ***PHP implode() 函数,将数组合并为字符串;explode() 函数,把字符串打散为数组

    实例 把数组元素组合为字符串: <?php $arr = array('Hello','World!','I','love','Shanghai!'); echo implode(" ...

随机推荐

  1. jQuery中的Ajax几种请求方式

    1. load( url, [data], [callback] ) :载入远程 HTML 文件代码并插入至 DOM 中. url (String) : 请求的HTML页的URL地址. data (M ...

  2. [BZOJ2792][Poi2012]Well

    2792: [Poi2012]Well Time Limit: 40 Sec  Memory Limit: 64 MBSubmit: 137  Solved: 61[Submit][Status][D ...

  3. Android -- TextView (3)

    1.效果图

  4. How to create a project with Oracle Policy Modeling

    This blog is about how to create a project with Oracle Policy Modeling. You can do it successfully i ...

  5. pr高的2级域名站点如何做优化?

    优化方法: 二级域名的内容建设也需要细致化 很多人认为,优化二级域名没有优化顶级域名那么多工作,只需要发发外链就可以了,这可以说是一个误区.我们的目的是要优化二级域名到首页,让用户能够看到,如果我们的 ...

  6. jquery中prop()方法和attr()方法的区别浅析

    官方例举的例子感觉和attr()差不多,也不知道有什么区别,既然有了prop()这个新方法,不可能没用吧,那什么时候该用attr(),什么时候该用prop()呢 jquery1.6中新加了一个方法pr ...

  7. mysql配置之skip-external-locking

    转载:http://www.kuqin.com/database/20120815/328905.html MySQL的配置文件my.cnf中默认存在一行skip-external-locking的参 ...

  8. JAVA双向链表

    1.链表是一种重要的数据结构,在程序设计中占有很重要的地位 2.我们可以用类List来实现链表结构,用变量Head.Tail.Length.Pointer来实现表头.存储当前结点的指针时有一定的技 巧 ...

  9. Daily Scrum 10.27

    今天是星期天,但大家都没有放松,还是抽出了一定的时间来完成任务.可以感觉出来在编译作业的压力下大家的热情不是很高涨,希望大家坚持下去. 下面是今天的Task统计: 下面是所有迭代的状态:

  10. spring security 图解过滤器的使用

    1. HttpSessionContextIntegrationFilter 位于过滤器顶端,第一个起作用的过滤器. 用途一,在执行其他过滤器之前,率先判断用户的session中是否已经存在一个Sec ...