天天看点

【PHP入门篇】2.变量--慕课网【学习总结】1.定义变量2.变量的数据类型

1.定义变量

例如:

<?php 
$var_name = "苹果";
$n = ;
var_dump($var_name); //var_dump函数可以将变量的数据类型显示出来
var_dump($n);
?>

Out:
string() "苹果"
int()
           

在这里,var_name是变量名,“苹果”是变量值,它是一个字符串;

n是变量名,10是变量值,它是一个整型。

注意:在PHP中变量名是区分大小写的。如“ my_book”与“my_Book”代表两个不同的变量。

2.变量的数据类型

  • memory_get_usage:获取当前PHP消耗的内存。
  • PHP是一门松散类型的语言,不必向PHP声明变量的数据类型,PHP会自动把变量转换为自动的数据类型,一定程度降低了学习PHP的门槛。如果接触过C语言或者JAVA语言,就会发现在声明变量的时候需要声明变量的数据类型。
//字符串变数字:
<?php 
 $string = "就是就是";
 var_dump($string);
 echo "<br />";
 $string = ;
 var_dump($string);
  echo "<br />";
?>

Out:
string() "就是就是" //这个变量自动就从原来的字符串转换成了整型咯
int()
           

在PHP中,支持8种原始类型,其中包括四种标量类型、两种复合类型和两种特殊类型。

①标量类型——布尔类型(boolean)

        只有两个值,一个是TRUE,另一个FALSE。它不区分大小写,也就是说”TRUE”和“true”效果是一样的。

注意:当我们用”echo”指令输出布尔类型时,如果是“true”则输出的是“1”,“false”则什么也不输出。但是可以使用“var_dump”函数,获取它真正的数据类型。

<?php 
    $man = "男";
    $flag = $man == "男";
    echo $flag ;
    echo "<br />" ;
    var_dump($flag);
?>

Out:
1
bool(true)
           

②标量类型——整型(integer)

        它可以用十进制、八进制、十六进制指定。八进制,数字前必须加上“0”;十六进制,数字前必须加“0x”。

<?php
$data_int1 = ;   // 十进制数 
$data_int2 = -;    // 一个负数
$data_int3 = ;    // 八进制数(等于十进制的 83)
$data_int4 = ;    // 十六进制数(等于十进制的 26)
?>
           

③标量类型——浮点型(浮点数、双精度数或实数)

        通常说的小数,可以用小数点或者科学计数法表示。科学计数法可以使用小写的e,也可以使用大写的E。

<?php
$num_float1 = ;    //小数点  
$num_float2 = ;    //科学计数法,小写e,1200
$num_float3 = ;     //科学计数法,大写E,0.007  
?>
           

④标量类型——字符串

        字符串是由一系列字符组成,在PHP中,字符和字节一样,也就是说,一共有256种不同字符的可能性。

        字符串型可以用三种方法定义:单引号形式、双引号形式和Heredoc结构形式(见下方❤)。

<?php 
$str_string1 = '我是字符串';
$str_string2 = "我也是字符串哦";
echo $str_string1;
echo "<br />";
echo $str_string2;
?>

Out:
我是字符串
我也是字符串哦
           

❤当字符串中包含引号时:

第一种方案:在单引号中嵌入双引号;

第二种方案:在双引号中嵌入单引号;

第三种方案:使用转义符“\”。

<?php 
$str_string1 = '甲问:"你在哪里学的PHP?"';
$str_string2 = "乙毫不犹豫地回答:'当然是慕课网咯!'";
$str_string3 = '甲问:\'能告诉我网址吗?\'';
$str_string4 = "乙答道:\"www.imooc.com\"";
echo $str_string1;
echo "<br />";
echo $str_string2;
echo "<br />";
echo $str_string3;
echo "<br />";
echo $str_string4;
echo "<br />";
?>

Out:
甲问:"你在哪里学的PHP?"
乙毫不犹豫地回答:'当然是慕课网咯!'
甲问:'能告诉我网址吗?'
乙答道:"www.imooc.com"
           

❤当引号遇到美元符时:

当双引号中包含变量时,变量会与双引号中的内容连接在一起;

当单引号中包含变量时,变量会被当做字符串输出。

<?php 
$love = "I love you!"; 
$string1 = "慕课网,$love";
$string2 = '慕课网,$love';
echo $string1;
echo "<br />";
echo $string2;
?>

Out:
慕课网,I love you!
慕课网,$love
           

❤当字符串很长时:

可以使用Heredoc结构形式的方法来解决该问题。

$变量名 = <<<标识符

长字符串

标识符;

注意:

  • 标识符,你可以用你的女神作为标识符“GOD”,也可以使用你喜欢的狗狗,“DOG”作为标识符,但是,结尾处的标识符也必须是一样的
  • 在结尾的一行,一定要另起一行,并且此行除了“GOD”,并以“;”号结束之外,不能有任何其他字符,前后都不能有,包括空格,否则会出现错误的哦
<?php 
$string1 = <<<GOD

我有一只小毛驴,我从来也不骑。
有一天我心血来潮,骑着去赶集。
我手里拿着小皮鞭,我心里正得意。
不知怎么哗啦啦啦啦,我摔了一身泥.

GOD;

echo $string1;
?>

Out:
我有一只小毛驴,我从来也不骑。
有一天我心血来潮,骑着去赶集。
我手里拿着小皮鞭,我心里正得意。
不知怎么哗啦啦啦啦,我摔了一身泥.
           

⑤特殊类型——资源(resource)

        资源是由专门的函数来建立和使用的,例如打开文件、数据连接、图形画布。我们可以对资源进行操作(创建、使用和释放)。任何资源,在不需要的时候应该被及时释放。如果我们忘记了释放资源,系统自动启用垃圾回收机制,在页面执行完毕后回收资源,以避免内存被消耗殆尽。

<?php
$file=fopen("f.txt","r");   //打开文件
$con=mysql_connect("localhost","root","root");  //连接数据库
$img=imagecreate(,);//图形画布
?>
           

        假设服务器上有个文件为“f.txt”,想看看里面的内容。这时候,就需要用到资源这种特殊的数据类型。具体步骤:

<?php 
//首先采用“fopen”函数打开文件,得到返回值的就是资源类型。
$file_handle = fopen("/data/webroot/resource/php/f.txt","r");

if ($file_handle){
    //接着采用while循环一行行地读取文件,然后输出每行的文字
    while (!feof($file_handle)) { //判断是否到最后一行
        $line = fgets($file_handle); //读取一行文本
        echo $line; //输出一行文本
        echo "<br />"; //换行
    }
}

fclose($file_handle);//关闭文件
?>

Out:
嘘!
我今天去慕课网学习PHP咯!
           

注意:f.txt文本文件保存时一定要设置为UTF-8格式,避免出现乱码。

⑥特殊类型——空类型(NULL)

        NULL是空类型,对大小写不敏感。NULL类型只有一个取值,表示一个变量没有值。当被赋值为NULL,或者尚未被赋值,或者被unset(),这三种情况下变量被认为为NULL。

<?php 
 error_reporting(); //禁止显示PHP警告提示
 $var; //为变量未赋值
 var_dump($var);
 $var1 = null; //将“null”赋值给变量“$var1”
 var_dump($var1);
 $var2 = NULL; //将“NULL”赋值给变量“$var2”
 var_dump( $var2);
 $var3 = "节日快乐!";
 unset($var3); //将变量“$var3”注销定义,释放$var3
 var_dump($var3);
?>

Out:
NULL
NULL
NULL
NULL
           
php