//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的函数和数组的更多相关文章

  1. C++基础——函数指针 函数指针数组

    ==================================声明================================== 本文版权归作者所有. 本文原创,转载必须在正文中显要地注明 ...

  2. typedef 函数指针 数组 std::function

    1.整型指针 typedef int* PINT;或typedef int *PINT; 2.结构体 typedef struct { double data;}DATA,  *PDATA;  //D ...

  3. C++程序设计(关于函数中数组传递的一点心得)

    题目: 10个学生考完期末考试评卷完成后,老师需要划出及格线,要求如下: (1) 及格线是10的倍数: (2) 保证至少有60%的学生及格: (3) 如果所有的学生都高于60分,则及格线为60分:   ...

  4. C#委托与C语言函数指针及函数指针数组

    C#委托与C语言函数指针及函数指针数组 在使用C#时总会为委托而感到疑惑,但现在总新温习了一遍C语言后,才真正理解的委托. 其实委托就类似于C/C++里的函数指针,在函数传参时传递的是函数指针,在调用 ...

  5. PHP中使用数组指针函数操作数组示例

    数组的内部指针是数组内部的组织机制,指向一个数组中的某个元素.默认是指向数组中第一个元素通过移动或改变指针的位置,可以访问数组中的任意元素.对于数组指针的控制PHP提供了以下几个内建函数可以利用. ★ ...

  6. C/C++ 一段代码区分数组指针|指针数组|函数指针|函数指针数组

    #include<stdio.h> #include<stdlib.h> #include<windows.h> /* 举列子说明什么是函数指针 */ //以一个加 ...

  7. C/C++ 不带参数的回调函数 与 带参数的回调函数 函数指针数组 例子

    先来不带参数的回调函数例子 #include <iostream> #include <windows.h> void printFunc() { std::cout<& ...

  8. c语言函数传递数组

    1.传递数组,打印不出来 #include <stdio.h> void solve() { printf(]); } int main() { int i; ;i<n;i++) { ...

  9. Linux C 程序 函数,数组,指针,gdb调试器(SEVEN)

    函数,数组,指针,gdb调试器 1.函数定义 如果明确指定返回类型,默认为int 参数传递:实参对形参的参数传递是单向的,实参只是把自己的值赋给形参.                      形参的 ...

  10. PHP函数积累总结(Math函数、字符串函数、数组函数)

    Math函数:10个较常用标红.abs — 绝对值acos — 反余弦acosh — 反双曲余弦asin — 反正弦asinh — 反双曲正弦atan2 — 两个参数的反正切atan — 反正切ata ...

随机推荐

  1. Linux SHELL 命令入门题目答案(一)

    1.如何使用shell 打印 “Hello World!” (1)如果你希望打印 !,那就不要将其放入双引号中,或者你可以通过转义字符转义(2)echo 'hello world!' 使用单引号ech ...

  2. C++-Qt【5】-QT的QString,char*,QByteArray转化以及中文乱码的问题

    引用:http://blog.sina.com.cn/s/blog_a7e2c7490101oatt.html QTextCodec *codec = QTextCodec::codecForName ...

  3. Codeforces CF#628 Education 8 F. Bear and Fair Set

    F. Bear and Fair Set time limit per test 2 seconds memory limit per test 256 megabytes input standar ...

  4. 数据库访问性能优化 Oracle

    特别说明: 1.  本文只是面对数据库应用开发的程序员,不适合专业DBA,DBA在数据库性能优化方面需要了解更多的知识: 2.  本文许多示例及概念是基于Oracle数据库描述,对于其它关系型数据库也 ...

  5. kindeditor-4.1.3工具使用技巧:如何在编辑区上传图片并保存绝对路径

    MVC项目开中用到了KindEditor图片上传工具,需要在编辑区内上传图片,并将图片的URL保存为符合如下格式地址,如http://192.168.0.111/uploadImg/imgName.j ...

  6. 移动web前端下拉刷新效果

    直接复制粘贴 放在页面中即可 <script> window.onload = function(){ window.addEventListener('touchstart', touc ...

  7. Linux 环境变量 设置 etc profile

    一.Linux的变量种类 按变量的生存周期来划分,Linux变量可分为两类: 1.永久的:需要修改配置文件,变量永久生效. 2.临时的:使用export命令声明即可,变量在关闭shell时失效. 二. ...

  8. Mybatis添加到Spring

    一.准备工作: 1.1 添加相应的jar包依赖: 这里用到了两个jar包,一个是mybatis的,另一个是mybatis-spring的,代码如下: 1 2 3 4 5 6 7 8 9 10 < ...

  9. (转)Eclipse和MyEclipse安装和使用git(egit)图解笔记

    Eclipse.MyEclipse使用git插件(egit)图解 (转)原文来自:http://www.xuebuyuan.com/446322.html 在开发Java.JavaEE等相关程序时,我 ...

  10. *HDU 2451 数学

    Simple Addition Expression Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Ja ...