PHP语法笔记二

日期函数

date_default_timezone_set(“PRC”):时区设置为中国区

date(“日期格式”[,时间戳]):设置当前或某个时间戳的日期格式。

  参数 format 表示时间格式化的方式,可能的方式如下:
    格式化方式     说明
    Y         4位数字年,y为2位数字,如99即1999年
    m         数字月份,前面有前导0,如01。n 为无前导0数字月份
    F         月份,完整的文本格式,例如 January 或者 March
    M         三个字母缩写表示的月份,例如 Jan 或者 Mar
    d         月份中的第几天,前面有前导0,如03。j 为无前导0的天数
    w         星期中的第几天,以数字表示,0表示星期天
    z         年份中的第几天,范围0-366
    W          年份中的第几周,如第32周
    H         24小时格式,有前导0,h为12小时格式
    G         24小时格式,无前导0,g为对应12小时格式
    i          分钟格式,有前导0
    s         秒格式,有前导0
    A         大写上下午,如AM,a为小写

提示
    如果您输出的时间和实际时间差8个小时(假设您采用的北京时区)的话,请检查        php.ini文件,做如下设置:
    date.timezone = PRC
mktime(时,分,秒,月,日,年)从日期取得时间戳,成功返回时间戳,否则返回false.
 参数可以从右向左省略,任何省略的参数会被设置成本地日期和时间的当前值。且会自动计算超出范围的输入的正确值。任何给定月份的最后一天都可以表示为下个月的第“0”天,而不是-1天。 
strtotime(string time,[,int now])将任何英文文本字符串表示的日期转为时间戳,为date()的反函数

什么是时间戳?从1970-1-1 00:00:00到某个日期的秒数。是一个int类型。在mysql数据表中保存日期的是一个int类型的字段

tme():得到的是当前的时间戳。

srtotime():得到某个日期的时间戳,跟date函数是一个相反的过程。

如:

date_default_timezone_set("PRC");

echo $t=strtotime("2016-10-10");//将日期专场成时间戳

echo date("Y年m月d日",$t);//将时间戳转换成日期格式

SWITCH 语句

switch (表达式或变量)
{
case [具体值或条件]:
当表达式=具体值或条件为true时,所执行的代码;可以多条语句;注意,不需要{ }
break;
case[具体值或条件]:
当表达式=具体值或条件为true时,所执行的代码;可以多条语句;注意,不需要{ }
break;

default:
当上面条件都不满足的时候执行。
}

例1:case 具体值情况
$i=1;
switch($i){
case 1:
echo 1;
break;
case 2:
echo 2;
break;
default:
echo 'others';
}
语句执行的过程:
$i=1;则程序执行到case 1,匹配成功,并执行echo 1;break;语句,其中break语句必须要写,执行break语句后,则跳出switch语句
当$i不等于1或者2,则会执行default后面的语句。

《For 循环语句》
for 循环用于您预先知道脚本需要运行的次数的情况。
所谓循环语句:指语句或语句体不断进行重复执行,并当满足某个条件后,退
出执行的语句。
语法
for (初始值; 条件; 增量或减量)
{
要循环执行的代码; //一条或多条语句。即循环体
}
参数:
•初始值:主要是初始化一个变量值,用于设置一个计数器(但可以是任何在循
环的开始被执行一次的代码)。
•条件:循环执行的限制条件。如果为 TRUE,则循环继续。如果为 FALSE,则
循环结束。
•增量或减量:主要用于递增或递减计数器(但可以是任何在循环的结束被执行
的代码)。
重要提示:上面的初始值和增量参数可为空,或者有多个表达式(用逗号分隔)。
例1:递增应用
下面的实例定义一个初始值为 i=1 的循环。只要变量 i 小于或者等于 5,循
环将继续运行。循环每运行一次,变量 i 就会递增 1:
<?php
for ($i=1; $i<=5; $i++)
{
echo "The number is " . $i . "<br>";
}
?>
输出:
The number is 1
The number is 2
The number is 3
The number is 4
The number is 5
执行过程:流程表
循环次数初始值循环条件循环体增量或减量
0 $i=1 1<=5(true)
1 执行:echo "The number is "
. $i . "<br>";
$i++(2)
2<=5(true)
2
执行:echo "The number is " . $i .
"<br>";
$i++(3)
3<=5(true)
3
执行:echo "The number is " . $i .
"<br>";
$i++(4)
4<=5(true)
4
执行:echo "The number is " . $i .
"<br>";
$i++(5)
5<=5(true)
5
执行:echo "The number is " . $i .
"<br>";
$i++(6)
6<=5(false) 退出循环
得出结论:从上面的流程表中可知,递增或递减的目的必须要保证循环条件能
够为false,只有条件为false 后才能正常退出循环;如果不能保证条件为
false,则会陷入死循环,切记避免。
例2:递减的应用
<?php
header("Content-Type:text/html;charset=utf-8");
for ($i=5; $i>=1 ; $i--)
{
echo "The number is " . $i . "<br>";
}
?>
执行结果:
The number is 5
The number is 4
The number is 3
The number is 2
The number is 1
比较递增与递减应用区别?
① 递增为++、递减为--;
② 递增初始值比条件值要大,并使用<或<=;而递减相反。
For 循环中常用的写法
① 初始化值可以放在for 外面
如:$i=1;
For(;$i<=5;$i++)
{
循环体
}
注意:初始化部分的”;”不能省略。
② 所有初始化值都可以放在for 循环初始化部分
如:for ($i=5,$j=5,$k=0; $i>=1 ; $i--)
{
echo "The number is " . $i . "<br>";
}
注意:初始化值之间使用”,”隔开。同样的道理,条件部分如果有多个条件的时
候,也可以放在一起,中间用”,”隔开。
例3:累加的for 循环实现方法
1+2+3+4+…+100=?
分析:(1)初始值?1
(2)终止值?100
(3)个加项之间相差?1,即每次递增1
程序实现如下:
$sum=0;//累加变量初始化值为0
for ($i=1; $i<=100 ; $i++)
{
$sum=$sum+$i;//累加的关键语句
}
echo $sum;
注意:实现累加的时候,必须有一个用来保存累加的变量(如$sum),并一般情况下,初始化
为0(如:$sum=0;),且循环体中有一条如:$sum=$sum+需要累加值;的语句。(如:
$sum=$sum+$i)
例4:累积的实现
10!=10*9*8*7*6*5*4*3*2*1=?
分析:(1)初始值?10;(2)终止值?1;③两两之间相差?递减1
程序实现如下:
$ji=1;//累积的变量初始化为1
for ($i=10; $i>=1 ; $i--)
{
$ji=$ji*$i;
}
echo $ji;
注意:实现累积的时候,必须有一个用来保存累积的变量(如$ji),并一般情况下,初始化为
1(如:$ji=1;),且循环体中有一条如:$ji=$ji+需要乘积值;的语句。(如:$ji=$ji*$i)
例5:累连接的实现
第0 行
第1 行
第2 行
第3 行
第4 行
第5 行
第6 行
第7 行
第8 行
第9 行
第10 行
分析:①初始值?0;②终止值?10;③每次相差1
实现思路:将每行的输出先连接起来后,统一进行输出,可以使用累连接输出。
<?php
header("Content-Type:text/html;charset=utf-8");
$str="";//累连接的变量初始化为””
for ($i=0; $i <=10 ; $i++) {
$str=$str."第{$i}行<br>";
}
echo $str;
?>
注意:实现累连接的时候,必须有一个用来保存累连接的变量(如$str),并一般情况下,初始
化为空(如:$str=” ”;),且循环体中有一条如:$str=$str.需要连接的值;的语句。(如: $str=$str."第
{$i}行<br>";)
累加、累积、累连接比较表
操作方式变量初始化循环体必须包含的语句格式
累加$sum=0; $sum=$sum+累加的变量值;(如:$sum=$sum+$i;)
累积$ji=1; $ji=$ji*累积的变量值;(如:$ji=$ji*$i;)
累连接$str=””l $str=$str.累连接的变量值;(如:$str=$str.$i;)


原文地址:https://www.cnblogs.com/tcheng/p/5952152.html