博客列表 >PHP变量的类型与检测与分支结构-0822

PHP变量的类型与检测与分支结构-0822

Bean_sproul
Bean_sproul原创
2018年08月28日 17:28:53822浏览

PHP变量的作用域

变量的作用域是脚本中变量可被引用/使用的范围

在所有函数外部定义的变量,拥有全局作用域global;在函数内部定义的变量用于局部作用域local。全局变量可以被脚本的任何位置访问,但在函数内部访问全局变量要使用global关键字。而局部变量只能在函数内部进行访问。

实例

$siteName = 'php中文网';这是一个全局变量

funtion test()

{

$userName = 'xiaoyang';这是一个局部变量

global $siteName;在局部中才能声明global才能从外部调用过来

<?php 
function test(){
    static $x = 0;这是一个静态变量
    echo $x;
    $x++;

}
test(); //输出0
test(); //输出1
test(); //输出2
?>

运行实例 »

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


变量的类型
PHP一共有8种数据类型
标量类型
1、boolean布尔型
2、integer整形
3、float浮点型
4、string字符串类型
复合型
1、array数组
2、object对象
特殊类型
1、resource资源
2、null空值 -->

实例

<?php

echo '<h1>标量类型</h1>';
$name = "huyang";//string
$age = 30;//integer
$salary = 4000.02;//float
$isMarried = true; // Boolean

// 检测变量类型使用gettype
echo $name , ',';
echo gettype($name), '<hr>';
echo $age, ',';
echo gettype($age), '<hr>';
echo $salary, ',';
echo gettype($salary),  '<hr>';
echo $isMarried, ',';
echo gettype($isMarried), '<hr>';
echo '$name='.$name .'的变量类型为'. gettype($name), '<hr>';


echo '<h1>复合类型</h1>';
$books = ['php','mysql','html','css','javascript']; //Array
echo '<pre>';
print_r($books);
print_r('$books,'.'的变量类型为') ;
print_r(gettype($books)) ;
echo '<hr>';

$student = new stdClass();  // Object
$student->name = '罗盼';
$student->course = 'php';
$student->grade = 80;
print_r($student);
print_r('$student,'.'的变量类型为') ;
print_r(gettype($student)) ;
echo '<hr>';

echo '<h1>特殊类型</h1>';
$file = fopen('test.txt','r') or die('打开失败');
echo fread($file, filesize('test.txt'));
echo gettype($file), '<hr>';
fclose($file);//关闭文件

$price = null;
echo is_null($price) ? '是NULL' : '不是NULL';
echo '<br>';
echo '$price的变量类型为'.gettype($price), '<hr>';

?>

运行实例 »

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


条件判断与多分支

实例

<?php
/**
 * 流程控制: 条件判断与多分支
 */

//1.单分支
$grade = 55;
if ($grade < 60) {
    echo '<p style="color:red">很不幸,您得补考</p>';
}

//2.双分支
$grade = 75;
if ($grade < 60) {
    echo '<p style="color:red">很不幸,您得补考</p>';
} else {  // $grade >= 60
    echo '<p style="color:green">恭喜,及格了</p>';
}

//3.多分支
$grade = 85;
if ($grade < 60) {
    echo '<p style="color:red">很不幸,您得补考</p>';
} else if ($grade >= 60 && $grade < 80) {  // $grade >= 60
    echo '<p style="color:green">考得还不错</p>';
} else if ($grade >= 80 && $grade <= 100) {  // $grade >= 60
    echo '<p style="color:green">真TM的是个天才</p>';
}

//4.三元判断:双分一个简写
$age = 16;
echo ($age >= 18) ? '<script>alert("已成年,可以浏览但不可沉迷其中")</script>' : '<p style="color:red">未成年自觉离开</p>';

//5 switch
$program = 'Java';
switch (strtolower($program)) {
    case 'php':
        echo '<p>php是全世界最好的编程语言~~</p>';
        break;
    case 'java':
        echo '<p>通用的编程语言~~</p>';
        break;
    case 'html':
        echo '<p>超文本标记语言~~</p>';
        break;
    default:  // 相当于 else
        echo '<p>你关心的语言未收录~~</p>';
}

运行实例 »

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






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