PHP数组及简单函数
PHP函数:
1.简单函数
四要素:返回类型,函数名,参数列表,函数体
function Show()
{
echo "hello";
} Show();
运行结果:hellow
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);//求得数组的和
运行结果:10
数组:
1.定义方式:
$attr = array(1,2);
$attr1 = [1,2,3,4,5];
$attr2[0] = "hello"; //定义attr2的第一个索引结果为“hellow”
$attr2[1] = "world"; //定义attr2的第二个索引结果为“world”
var_dump($attr2);
运行结果:

2.索引数组:
$attr = array(1,2,3);
var_dump($attr); //输出数组的索引及数组的值和值的类型
运行结果:

3.关联数组:
$attr1 = array("one"=>1,"two"=>2,"3"=>3); //将数组的索引设为 one,two,3
var_dump($attr1);
echo $attr1[3];
运行结果:

遍历数组:
1.for循环遍历,只能遍历索引数组
$attr = array(1,2,3); //只能遍历索引数组
for($i=0;$i<count($attr);$i++)
{
echo $attr[$i]."<br>";
}
运行结果:

2.foreach遍历,索引关联都可以遍历
$attr = array(1,2,3);
$attr1 = array("one"=>1,"two"=>2,"3"=>3);
foreach($attr as $v) //attr和attr1两种类型的数组都可遍历
{
echo $v."<br>";
} foreach($attr1 as $k=>$v)
{
echo "{$k}--{$v}<br>";
}
运行结果:

3.each()和list()配合着来遍历数组:
$arr = array('你','若','安','好','便','是','晴','天');
for(;list($k,$v)=each($arr);){ //分别用$k和$v 代替数组中的索引和值
echo $k,'~',$v,'<br />';
}
$arr = array('你','若','安','好','便','是','晴','天');
//分别用$k和$v 代替数组中的索引和值
while(list($k,$v) = each($arr))
{
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); //将指针复位 $attr=array(3,2,4,5);
$attr1=array(4,5,6,7,8);
for($i=0;$i<count($attr1);$i++)
{
echo key($attr1); //取指针指向的当前元素的key
next($attr1); //指针下调,循环
}
echo "<br>";
do
{
echo key($attr);
}
while(next($attr))
运行结果:

PHP数组及简单函数的更多相关文章
- Javascript 基础知识笔记
标签(空格分隔): 廖老师学习笔记 javascript 基本入门 根据廖雪峰老师官网,自己看后的简单笔记 第一小节 基本知识 <script type="text/javascrip ...
- php的函数和数组
//php函数//1.简单函数//四要素:返回类型,函数名,参数列表,函数体/*function Show(){ echo "hello";}Show();*///2.有返回 ...
- php函数、php定义数组和数组遍历
<?php //php函数//1.简单函数//四要素:返回类型,函数名,参数列表,函数体 /*function Show(){ echo "hello";} Show();* ...
- c++ 依据输入动态声明数组(一维,二维)
较早的编译器是不同意这样做的,所以一些书籍比方以Tc解说的书本都说数组的下标不能是变量.在vc6.0下亦是如此. 只是在一些较新的编译器如dev c++已经支持了,例如以下代码不会报错 #includ ...
- 深入理解php内核 编写扩展 II:参数、数组和ZVALs
原文:http://devzone.zend.com/article/1022-Extension-Writing-Part-II-Parameters-Arrays-and-ZVALs Part I ...
- 『Python CoolBook』Cython_高效数组操作
数组运算加速是至关科学计算重要的领域,本节我们以一个简单函数为例,使用C语言为python数组加速. 一.Cython 本函数为一维数组修剪最大最小值 version1 @cython.boundsc ...
- 【学习】通用函数:快速的元素级数组函数【Numpy】
通用函数(即ufunc)是一种对ndarray中的数据执行元素级运算的函数.可以将其看做简单函数(接受一个或多个标量值,并产生一个或多个标量值)的矢量化包装器. sqrt 和 exp为一元(unary ...
- PHP-自定义数组-预定义数组-自定义函数-预定义函数
(1)自定义数组 —— 项目中的重点 (2)PHP预定义数组 —— 重点&难点 (3)自定义函数 —— 了解 (4)PHP预定义函数 —— 项目中的重点 1.自定义数组 数组:array,一个 ...
- python数据分析---第04章 NumPy基础:数组和矢量计算
NumPy(Numerical Python的简称)是Python数值计算最重要的基础包.大多数提供科学计算的包都是用NumPy的数组作为构建基础. NumPy的部分功能如下: ndarray,一个具 ...
随机推荐
- 使用Dotfuscator 进行.Net代码混淆 代码加密的方法
混淆代码能在一定程度上放置代码被盗用,保护我们的知识产权 1.打开vs2012,选择工具-〉Dotfuscator Software Services 2.选择你需要混淆的DLL 文件,可以多选择 3 ...
- java学习笔记(1)
最近开始学习java基本技术,在这里总结一下我学到的内容: 1.Java的基本历史 java起源于SUN公司的一个GREEN的项目,其原先目的是:为家用消费电子产品发送一个信息的分布式代码系统,通过发 ...
- 持续集成及部署利器:Go
Go是一款先进的持续集成和发布管理系统,由ThoughtWorks开发.(不要和Google的编程语言Go混淆了!)其前身为CruiseControl,是ThoughtWorks在做咨询和交付交付项目 ...
- APK瘦身记,如何实现高达53%的压缩效果
作者:非戈@阿里移动安全 1.我是怎么思考这件事情的 APK是Android系统安装包的文件格式,关于这个话题其实是一个老生常谈的题目,不论是公司内部,还是外部网络,前人前辈已经总结出很多方法和规律. ...
- Async All the Way
Asynchronous code reminds me of the story of a fellow who mentioned that the world was suspended in ...
- 每周一书-《鸟哥的Linux私房菜》获奖公布
<鸟哥的Linux私房菜>一书的赠书活动时间为2016年10月19日到10月31日, 也就是今天结束. 首先要感谢QQ号为:1084830483(路在远方),来自哈尔滨工程大学的同学赠送给 ...
- 剑指Offer面试题:7.旋转数组的最小数字
一.题目:旋转数组的最小数字 题目:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转.输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素.例如数组{3,4,5,1,2}为{1,2 ...
- 剑指Offer面试题:25.二叉搜索树与双向链表
一.题目:二叉搜索树与双向链表 题目:输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表.要求不能创建任何新的结点,只能调整树中结点指针的指向.比如输入下图中左边的二叉搜索树,则输出转换之后的 ...
- Unity3D游戏开发初探—4.开发一个“疯狂击箱子”游戏
一.预备知识—对象的”生“与”死“ (1)如何在游戏脚本程序中创建对象而不是一开始就创建好对象?->使用GameObject的静态方法:CreatePrimitive() 以上一篇的博文中的“指 ...
- jqGrid的autoencode参数设置为true在客户端可能引发的编码问题
不久前使用jqGrid+MVC做过一段时间开发. 一开始,分页参数几乎都是默认值,jqGrid的分页功能很好用. 考虑到each input is evil,我们的系统对安全性又有较高要求,所以,为了 ...