博客列表 >php的学习第二课(PHP变量的进阶知识)-2018年8月25日22点50分

php的学习第二课(PHP变量的进阶知识)-2018年8月25日22点50分

victor的博客
victor的博客原创
2018年08月26日 01:40:58917浏览

手写作业:

变量作用域

DE1CE6F0A9CE36E7D90E789D758ACC72.png

变量分支:

实例

<?php
/**
 * 条件判断及多分枝
 */

//1. 单分支

$grade1 = 55;
if($grade1 < 60){
    echo '<span>补考补考</span>';
}

echo '<hr/>';

//2. 双分支

$grade2 = 61;
if($grade2 < 60){
    echo '<span>补考补考</span>';
}else{
    echo '<span>不错</span>';
}
echo '<hr/>';

//3. 多分枝

$grade3 = 61;
if($grade3 < 60){
    echo '<span>补考补考</span>';
}else if($grade3 >= 60 && $grade3 < 80){
    echo '<span>不错</span>';
}else if($grade3 >= 80 && $grade3 < 100){
    echo '<span>你真tm 蠢</span>';
}else{
    echo '<span>人面猪身</span>';
}

echo '<hr/>';

//4. 三元判断,双分支的简写
$age = 15;
echo ($age>=18)?'<p>已成年</p>' : '<p>未成年,滚</p>';

// switch   strtolower变小写
$program = 'PHP';
switch(strtolower($program)){
    case 'php':
        echo '<p>最好的语言</p>';
        break;
    case 'java':
        echo '<p>通用的语言</p>';
        break;
    case 'html':
        echo '<p>超文本语言</p>';
        break;
    default:
        echo '<p>你的语言是渣渣</p>';
}

//for 循环
//for(初始条件;结束条件;更新条件){
//    循环体;
//}
for($i=0; $i<10; $i++){
//    print($i.',');
//    if($i<9){
//        print(',');
//    }

    ($i<9) ? print($i.',') : print($i);
}

运行实例 »

点击 "运行实例" 按钮查看在线实例

分支结果图:

111.png

变量类型与检测:

实例

<?php

//变量类型及转换
//is_null() empty() isset()
//变量的作用域
//常量 数组
//流程控制
//表格生成器


//php可以和html混编
//出现乱码就放 meta 在页头 <meta charset="UTF-8"> 或者php代码 header('Content-type:text/html;charset=UTF-8');

//标量:单值变量-有四种:数值(整数,浮点),字符串,布尔值         都叫标量,或者基础数据类型
//复合类型:多值变量:数组 array,对象 object
//特殊类型:资源类型,null

$age = 20; //整数 integer
$salary = 3333.333; //浮点 float
$name = 'x';
$marriaged = true;

echo $name . '的年龄' . $age . $salary . $marriaged;
//布尔值echo输出,true为1,false 为空

echo '<hr/>';

echo $name, '的年龄', $age, $salary, $marriaged;
//逗号也可以连接字符串

echo '<hr/>';

//数组
$books = ['php','mysql','html','css','javascript'];
//print_r() 可以输出数组和变量
print_r($books);
//若格式化可以1.看源码;2.加一行 echo '<pre>';
echo '<hr/>';
echo '<pre>';
print_r($books);

//对象
$student = new stdClass(); //stdClass 标准类
$student->name = 'aa';
$student->class = '0';
$student->grades = 'a';
//箭头指向属性
var_dump($student); //查看对象

echo '<hr/>';
var_dump($student->name);

echo '<hr/>';
echo $student->name;

echo '<hr/>';
echo '<h2>'.print_r($student->name, true). '<h2>';

//resource 资源类型
//打开文件
$file = fopen('text.txt', 'r') or die("fail");
echo fread($file, filesize('text.txt'));
//fclose($file);

//null 类型
$price = null;
echo 'price is' . $price;

echo '<hr/>';

echo is_null($price)?'是null':'不是null';

//变量检测

echo '<hr/>';

//gettype 获取变量类型
echo gettype($file);

echo '<hr/>';
//settype 设置类型
//设置之后,类型将永久改变

$value = 124.58;
settype($value, 'integer');
echo gettype($value);

运行实例 »

点击 "运行实例" 按钮查看在线实例

实例

<?php
//is_null() empty() isset()

$val1;          //声明变量,但没有值,默认值是 null
$val2 = null;   //声明并初始化(第一次赋值)
$val3 = 'php';

unset($val3);   //销毁

var_dump(is_null($val1) ? true : false);

echo '<hr/>';

@var_dump(is_null($val1) ? true : false);

echo '<hr/>';

@var_dump(is_null($val2) ? true : false);

echo '<hr/>';

@var_dump(is_null($val3) ? true : false);

//empty()
// 空数组, 空字符串, null ,0 ,'0' , false

$str1 = '';
$str2 = [];
$str3 = 0;
$str4 = '0';
echo '<hr/>';

@var_dump(empty($str1) ? true : false);
echo '<hr/>';
@var_dump(empty($str2) ? true : false);
echo '<hr/>';
@var_dump(empty($str3) ? true : false);
echo '<hr/>';
@var_dump(empty($str4) ? true : false);
echo '<hr/>';

//  isset() 检测一个变量是否存在  is_null的反向操作
//  变量已经存在(有值),并且值不是null,然后返回true
$a = null;
var_dump(isset($a));

echo '<hr/>';

$b = 'abc';
var_dump(isset($b));

echo '<hr/>';

$c;
var_dump(isset($c));

运行实例 »

点击 "运行实例" 按钮查看在线实例

总结:

标量也叫单值变量,总共有四种类型:数值类型(整数和浮点);字符串;布尔值

复合类型,也叫多值类型变量:数组(array);对象(object)

特殊类型:资源类型;null

一般的标量可以直接用echo输出查看;print_r() 可以输出查看数组;var_dump可以输出查看对象

资源类型,学习了fopen,fread用来查看文件

//打开文件
$file = fopen('text.txt', 'r') or die("fail");
echo fread($file, filesize('text.txt'));

查看变量类型可以用gettype函数;eg:echo gettype($file);

settype是用来设置变量类型,设置之后,变量的类型永久改变

* 常量就是个只读变量,一旦声明就不能删除,不能更改,
* 常量没有作用域限制,可以直接在函数内使用,而不用再次声明
* 通常,常量全部采用大写字母,不能用$开头,多个单词用下划线连接

打印当前系统中的所有常量  添加pre 格式化输出 用户自定义的常量也会放在里面,放在最后

$city = ['合肥','上海','杭州','南京'];

索引数组,四个元素的索引数组,通过位置访问,0,1,2,3

$user = ['id'=>10, 'name'=>'aa','grade'=>66];   //关联数组,由键值对组成   适合数据库

unset()可以用来删除数组中的某个值,或者整个数组

条件判断主要学了if...else...函数,三元运算和switch函数

$grade3 = 61;
if($grade3 < 60){
   echo '<span>补考补考</span>';
}else if($grade3 >= 60 && $grade3 < 80){
   echo '<span>不错</span>';
}else if($grade3 >= 80 && $grade3 < 100){
   echo '<span>你真tm 蠢</span>';
}else{
   echo '<span>人面猪身</span>';
}

$age = 15;
echo ($age>=18)?'<p>已成年</p>' : '<p>未成年,滚</p>';

// switch   
$program = 'PHP';
switch(strtolower($program)){
   case 'php':
       echo '<p>最好的语言</p>';
       break;
   case 'java':
       echo '<p>通用的语言</p>';
       break;
   case 'html':
       echo '<p>超文本语言</p>';
       break;
   default:
       echo '<p>你的语言是渣渣</p>';
}

strtolower用来把函数里面的值变小写


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议