zoukankan      html  css  js  c++  java
  • php自学笔记3

    -------
    补充
    --------
    建议定义常量时,判断常量名是否被定义,用defined()判断,返回布尔型
    if(!defined("POEM")){//没定义过
    define("POEM","杜甫");
    }
    ---------------------------------
    1,运算符
    2.选择结构
    3.循环结构
    -----------------------------------
    ***1,运算符
    算数运算 (+ - * /非整除 %求余 ++ -- )
    $x=10;
    $y=$x++; // 先赋值后自增
    $z=++$x; //先自增后赋值
    echo $y,$x,$z;
    逻辑运算
    与&& and 或|| or 非!not xor异或
    注意:(1) 优先级:and小于&&,or小于||
    $e=false||true;
    $f=false or true;//先赋值,后判断
    echo $e,"----",$f; // 1---
    建议使用&&或||,使用or或者and的时根据需要添加括号
    (2)
    表达式1&&表达式2 若1为假,不再判断2
    表达式1||表达式2 若1为真,不再判断2
    $x=10;
    $y=9;
    $z=$x||++$y;//左侧为1,右侧++$y没有执行
    echo $z,$y;
    比较运算符
    > < >= <=
    ==(值相等) ===全等(值和类型都相等)
    !=(值不等) !==不全等(值或类型不相等)
    $x=10;
    $y=10.0;
    $z=9;
    if($x==$y){//值等
    echo "相等1";
    }
    if($x===$y){//值和类型完全相等 且
    echo "等价2";
    }
    if($x!=$z){
    echo "不相等3";
    }
    //!(a且b) = !a || !b

    if($x!==$z){//值或类型不等
    echo "不相等4";
    }
    【注意】字符串比较:从左到右依次比较每个字符

    赋值运算符
    = += -= *= /= %= .=
    $a=10;
    $a+=12;
    echo $a;

    $y="hello";
    $y.="world";
    echo $y;

    三目运算(三元表达式)
    条件 ?表达式1 :表达式2
    如果条件为真,结果为表达式1,否则结果为表达式2
    //需求:如果输入tom 123表示登陆成功,否则登录失败
    $name=$_GET["username"];
    $psw=$_GET["psw"];

    $result= $name=="tom"&&$psw=="123" ?"登录成功,$name ,$psw": "登录失败";
    $result2= $name=="tom"&&$psw!="123" ?"密码不正确": "";
    $result3= $name!="tom" ?"用户不存在": "";

    echo $result,$result2,$result3;
    // 第二种
    $result=$_GET["user"]=="tom" ? ($_GET["pass"]=="123"? "登陆成功":"密码不正确"):"用户名不存在";
    echo $result;

    ****选择结构
    单分支if
    双 if else
    多分支 if else if ... else

    echo date("Y年m月d日D星期");
    $time=date("H");
    if($time<12){
    echo "上午好";
    }else if($time>=12&&$time<18){
    echo "下午好";
    }else{
    echo "晚上好";
    }
    **switch选择结构
    多路选择:值等或不等的情况,不能处理范围或区间的选择
    $time=$_GET["time"];
    switch($time){
    case "1" :echo "星期一"; break;
    case "2" :echo "星期二"; break;
    case "3" :echo "星期三"; break;
    case "4" :echo "星期4"; break;
    case "5" :echo "星期5"; break;
    case "6" :echo "星期6"; break;
    case "7" :echo "星期日"; break;
    default : echo "星期错误";break;
    }


    $time=4;
    switch($time){
    case "1" :echo "星期一";
    case "2" :echo "星期二";
    case "3" :echo "星期三"; break;
    case "4" :echo "星期4";
    case "5" :echo "星期5"; break;
    case "6" :echo "星期6";
    case "7" :echo "星期日";
    default : echo "星期错误";break;
    }
    //星期4 星期5
    【注】switch匹配case成功后,直到遇到break才退出选择结构,所以推荐每个case后都要加break;
    default位置任意,执行也是遇到break退出选择结构
    switch执行顺序:先匹配case,如果case匹配不成功,匹配default
    例1:
    $b=true;
    switch($b){
    case false:echo '假' ;break;
    case 0:echo '*******' ;break;
    case null:echo '空';break;
    case -1:echo '负数' ;break;
    case 2:echo '星期二' ;break;
    default:echo "no this day";
    }
    // switch中表达式为true时,匹配非false的case入口
    // 非0即为true, false和0以及null都为false
    例二:
    $b=2;
    switch($b){
    case true:echo 'happy' ;break;
    case 2:echo '星期二' ;break;
    default:echo "no this day";
    }
    //说明:如果case为true的入口在匹配成功之前,该case一定会匹配到
    例三:
    $b="2";
    switch($b){
    case 2:echo '星期二' ;break;
    case true:echo 'happy' ;break;
    default:echo "no this day";
    }
    //case匹配的是数值,switch结构能够自动转换类型
    例四:
    $b=null;
    switch($b){
    case false:echo '假';break;
    case null:echo 'null对象' ;break;
    default:echo "no this day";
    }
    // 说明:switch中表达式值为null,作为false匹配
    //此处null和false都是匹配入口,结果与这两个case入口的顺序有关
    ***循环结构
    while(条件){
    // 循环体
    //注意:控制变量
    }
    //需求:求1-100的和
    $i=1;//控制变量
    $sum=0;//保存结果
    while($i<=100){
    $sum+=$i;
    $i++;//别忘了
    }
    echo $sum;
    do-while:先斩后奏
    do{
    //循环体
    // 修改控制变量
    }while(条件);

    //需求:求1-100的和
    $i=1;//控制变量
    $sum=0;//保存结果
    do{
    $sum+=$i;
    $i++;
    }while($i<=100);
    echo $sum;
    for循环
    for(语句1;条件;语句){
    //循环体
    }
    //需求:求1-100的和
    $sum=0;//保存结果
    for($i=1;$i<=100;$i++){
    $sum+=$i;
    }
    echo $sum;
    //说明:已知循环次数时,通常采用for循环,若不知道循环次数一般用while或者do-while
    ****循环结构复合体
    //外层控制行号
    for($i=1;$i<=9;$i++){
    //内层控制每行输几个#
    for($j=1;$j<=$i;$j++){
    echo "#";
    }
    echo "<br>";
    }

    //外层控制行号
    for($i=1;$i<=9;$i++){
    //内层控制每行输入的内容
    //输空格
    for($j=1;$j<=10-$i;$j++){
    echo "&nbsp;&nbsp;";
    }
    // 输出#
    for($j=1;$j<=$i;$j++){
    echo "#";
    }
    echo "<br>";
    }
    //输出金字塔
    for($i=1;$i<=9;$i++){
    //内层控制每行输入的内容
    //输空格
    for($j=1;$j<=10-$i;$j++){
    echo "$";
    }
    // 输出#
    for($j=1;$j<=2*$i-1;$j++){
    echo "#";
    }
    echo "<br>";
    }
    //输出空心金字塔
    for($i=1;$i<=9;$i++){
    //内层控制每行输入的内容
    //输空格
    for($j=1;$j<=9-$i;$j++){
    echo "&nbsp;";
    }
    // 输出#
    for($j=1;$j<=2*$i-1;$j++){
    //除最后一行之外,// 首末输出#,否则输出空格
    if($i!=9){
    if($j==1||$j==2*$i-1){
    echo "#";
    }else{
    echo "&nbsp;";
    }
    }else{
    echo "#";
    }
    }
    echo "<br>";
    }
  • 相关阅读:
    jmeter之jmx和控件介绍
    Jmeter使用1
    jmeter组件之聚合报告分析
    响应断言
    jmeter组件介绍-线程组、http采样器、结果树
    jmeter目录文件讲解和切换语言
    jmeter 学习 -安装
    关于去除input type='file'改变组件的默认样式换成自己需要的样式的解决方案
    js根据id、value值对checkbox设置选中状态
    javaweb简单的实现文件下载及预览
  • 原文地址:https://www.cnblogs.com/iwebkit/p/6286911.html
Copyright © 2011-2022 走看看