php第四节(循环和函数)
<?php
//循环有 for(){}、有while(){} 有do{}while()、foreach(){}循环
//1、for(){}
for($i=0;$i<=9;$i++){
echo $i."<br/>";
}
//2.while()
$var =1;
while($var<=5;){
echo "*";
$var++; }
//3.do{}while()
do{
echo "林夕"."<br/>";
$t++;
}while($t<=6;) //foreach() 主要用于循环数组 $arr=[1,2,3,4,6];
foreach($arr as $value){
echo $value."<br/>";
} //break;高级使用 终止循环体
//continue的使用 跳出当前循环 继续执行下一次循环 //冒泡排序
//count($arr) //获取数组长度
$arr=[88,55,66,77,11,99,33,22,44,0];
$arrLen=count($arr);
for($j=1;$j<$arrLen;$j++){
for($i=0;$i<$arrLen-$j;$i++){
//如果$arr[$i]>$arr[$i+1] 进行冒泡排序
if($arr[$i]>$arr[$i+1]){
//把比较后大的值赋值给变量 暂存起来
$tmp=$arr[$i];
//比较后小的值赋值给$arr[$i]
$arr[$i]=$arr[$i+1];
//把比较后大的值给$arr[$i+1] 这样交换位置进行下一次比较
$arr[$i+1]=$tmp;
}
}
}
echo "<pre>";
print_r($arr); /**
* 函数的类型
* 无参无返
* 无参有返
* 有参无返
* 有参有返
*/
function qwe(){
echo "无参无返";
}
qwe(); //无参有返
function asd(){
return "林夕";
} $res=asd();
echo $res; $str="林夕";
function linxi($str){
echo $str."有参无返";
}
linxi(); //有参有返
$a=3;
$b=6;
function sum($a,$b){
return $a+$b;
}
$num=sum();
echo $num; /**
* 变量的作用域
* 全局变量 定义在函数之外的变量 作用于全局
* 局部变量 定义在函数内部的变量 作用函数内部
* 静态变量 函数内部定义的变量实现函数数据的共享
* 函数内引用全局变量 需要用关键字 global 才能使用 global $变量
*/ $res="navl";
function strings(){
global $res;
$res="1445";
return $res;
}
echo strings();
//可变函数 把一个函数的名称作为一个值赋给一个变量 实现回调函数
$a=5;
$b=4;
function add($a,$b){
return $a+$b;
}
$strAdd="add";
$strAdd(); //匿名函数 语法的测试
$var = function () {
echo "hello world2";
}; $var(); //回调函数 把函数的函数名称作为参数传递给另一个函数 $arr=[11,22,33,44,55] function addT($num){
return $num+22;
}
//array_map()为数组的每个元素应用回调函数 这个函数为php内置函数
$newArr = array_map("add", $arr);
echo "<pre>";
var_dump($newArr); //我们自己写个函数代替array_map(); function addA($clerback,$arr){
$newArr=[];
foreach($arr as $value){
$newArr[]=$clerback($value);
}
return $newArr;
}
$res=addA("addT",$arr);
echo "<pre>";
var_dump($res); //递归 在函数内部调用自身
//递归必须要有出口 function foo ($num) {
echo "hello world"."<br/>";
if ($num == 0 ) {
return;
}
--$num;
foo($num);
}
$num = 2;
foo($num); //导入文件函数 include() require
//include 如果包含文件失败 会报错 但会执行后续代码
//require 如果包含文件失败 会报错 不会执行后续代码
//include_once 包含一次
//require_once 包含一次
?>
php第四节(循环和函数)的更多相关文章
- C语言系列之预处理指令、循环左移函数的使用(四)
本章节将讲两个知识点 第一个知识点:常用的预处理指令 第二个知识点:循环左移右移函数 第一个知识点:预处理指令 一种预处理指令是#define,他把名字A定义为P0,当这个名字出现在源文件的任何地方时 ...
- 第十四章——循环神经网络(Recurrent Neural Networks)(第二部分)
本章共两部分,这是第二部分: 第十四章--循环神经网络(Recurrent Neural Networks)(第一部分) 第十四章--循环神经网络(Recurrent Neural Networks) ...
- 第三百八十四节,Django+Xadmin打造上线标准的在线教育平台—路由映射与静态文件配置以及会员注册
第三百八十四节,Django+Xadmin打造上线标准的在线教育平台—路由映射与静态文件配置以及会员注册 基于类的路由映射 from django.conf.urls import url, incl ...
- VUE2.0实现购物车和地址选配功能学习第四节
第四节 v-on实现金额动态计算 用¥金额 进行格式处理,可以使用原生js进行转换,但是在vuei,使用filter过滤器更加方便 注: 1.es6语法=>和import等 好处在于res参数后 ...
- delphi 线程教学第四节:多线程类的改进
第四节:多线程类的改进 1.需要改进的地方 a) 让线程类结束时不自动释放,以便符合 delphi 的用法.即 FreeOnTerminate:=false; b) 改造 Create 的参数 ...
- JAVA之旅(十四)——静态同步函数的锁是class对象,多线程的单例设计模式,死锁,线程中的通讯以及通讯所带来的安全隐患,等待唤醒机制
JAVA之旅(十四)--静态同步函数的锁是class对象,多线程的单例设计模式,死锁,线程中的通讯以及通讯所带来的安全隐患,等待唤醒机制 JAVA之旅,一路有你,加油! 一.静态同步函数的锁是clas ...
- 第十四章——循环神经网络(Recurrent Neural Networks)(第一部分)
由于本章过长,分为两个部分,这是第一部分. 这几年提到RNN,一般指Recurrent Neural Networks,至于翻译成循环神经网络还是递归神经网络都可以.wiki上面把Recurrent ...
- 大白话5分钟带你走进人工智能-第十四节过拟合解决手段L1和L2正则
第十四节过拟合解决手段L1和L2正则 第十三节中, ...
- 大白话5分钟带你走进人工智能-第四节最大似然推导mse损失函数(深度解析最小二乘来源)(2)
第四节 最大似然推导mse损失函数(深度解析最小二乘来源)(2) 上一节我们说了极大似然的思想以及似然函数的意义,了解了要使模型最好的参数值就要使似然函数最大,同时损失函数(最小二乘)最小,留下了一 ...
- 第三百九十四节,Django+Xadmin打造上线标准的在线教育平台—Xadmin后台进阶开发配置2,以及目录结构说明
第三百九十四节,Django+Xadmin打造上线标准的在线教育平台—Xadmin后台进阶开发配置2,以及目录结构说明 设置后台列表页面可以直接修改字段内容 在当前APP里的adminx.py文件里的 ...
随机推荐
- python学习(三)--跟着例子写的贴吧网页爬取
from urllib import requestimport urllib #爬贴吧网页文件到本地.首先在本地打开百度贴吧 搜索 java吧#第一页的内容是:http://tieba.baidu. ...
- javaSE练习2——流程控制_2.1
一.企业发放的奖金根据利润提成.利润低于或等于10万元时,奖金可提10%:利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%:20万到40万之间时,高 ...
- 使用Spring的AOP实现切面日志
AOP切面日志的使用方式 @Aspect @Component public class HttpAspect { private static final Logger logger = Logge ...
- laravel vue.js的使用
安装cors 地址:https://github.com/barryvdh/laravel-cors 在Kernel文件中加上 protected $middleware = [ \Barryv ...
- DOM 和 BOM
DOM 和 BOM DOM: DOM= Document Object Model,文档对象模型,DOM可以以一种独立于平台和语言的方式访问和修改一个文档的内容和结构.换句话说,这是表示和处理一个H ...
- Arcobject获得栅格影像的边界
一般的各种遥感影像都是采用某种地理或投影坐标的栅格影像,对于从事影像相关工作的人来说,得到现有影像的覆盖范围是确定研究内容,购买遥感影像的基础.怎么得到这个覆盖范围呢?当然我们可以在ArcGIS或ER ...
- Android基础Activity篇——创建一个活动(Activity)
1.创建活动 首先用AS创建一个add no activity项目名使用ActivityTest,包名为默认的com.example.activitytest 2.右击app.java.com.exa ...
- IT小小鸟读书笔记2
Part4: 一. 大学的时光真的很容易荒废,自己的实力到头来和自己的成绩单一样空虚,其实自己也是深有同感的. 二. 这个观点我十分的认同:在某个方面比别人多5%的深度,可能拿到的报酬就是 ...
- python常用模块(一)
#什么是模块呢?就是用一大坨代码来完成一个功能的代码集合,是不是简单易懂 #类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个 ...
- Twitter Typeahead plugin Example
原文网址: http://dhtmlexamples.com/2012/02/27/using-the-typeahead-plugin-with-twitter-bootstrap-2-and-jq ...