<?php
header("Content-Type: text/html; charset=utf-8"); //定义此文件的字符集为utf-8
echo 'PHP第一季视频教程.李炎恢.学习笔记(三)(第2章 基本语法(2))'.'<br/>';
echo '<br/>';
?>
<?php
echo '第2章 基本语法'.'<br/>';
echo '<br/>';
echo '学习要点:'.'<br/>';
echo ' 1.Zend Studio的两个小问题'.'<br/>';
echo ' 2.在Web页面中嵌入PHP代码'.'<br/>';
echo ' 3.标识符与变量、常量'.'<br/>';
echo ' 4.访问表单变量'.'<br/>';
echo '<br/>';
?>
<?php
echo '2.3 标识符与变量';
//标识符就是变量名
//标识符长度任意,但不能为纯数字
//标识符区分大小写
//标识符可以由任何字母、数字、下划线组成
//一个变量名称可以与一个函数名称相同
echo '基本数据类型:'.'<br/>';
echo 'Integer、Float、String、Boolean、Array、Object'.'<br/>';
//创建变量的时候,通过赋值来确定他的类型
// Float类型可以直接赋值给Integer,目标变量将变成Float类型。
$sum = 0;
$total = 1.22;
$sum = $total; //隐式转换,integer -> float
echo $sum;
echo '<br/>';
echo '<br/>';
//类型转换,使用类型转换,可以将一个变量或值转换成另一种类型
$sum = 147;
$total = (float)$sum;
?>
<?php
//检测变量
echo '<b>检测变量</b>'.'<br/>';
echo 'gettype()和settype()'.'<br/>';;
echo '$sum的类型为:'.gettype($sum);
echo '<br/>';
echo '$total的类型为:'.gettype($total);
echo '<br/>';
//将$sum的类型转换成字符串型
echo 'settype()返回值:'.settype($sum, 'string');
echo '<br/>';
echo 'settype()后,$sum转换后的类型为:'.gettype($sum);
echo '<br/>';
echo '<br/>';
?>
<?php
echo 'isset()和unset()用来判断一个变量是否存在,或者销毁一个变量,返回true(1)或false(0/空)';
echo '<br/>';
$a = 5; //定义变量
$b = 9;
unset($a); //销毁变量,释放变量
//如果变量真实存在,isset()函数返回一个boolean值1,否则返回空。
echo '判断变量$a是否存在:'.isset($a).'<br/>';
echo '判断变量$b是否存在:'.isset($b).'<br/>';
echo '<br/>';
?>
<?php
echo '<b>empty()用来判断一个变量的值是否为空,返回true(1)或false(0/空)';
echo '<br/>';
echo '空字符串、0、"0"、NULL、false、array()、var$var,以及没有任何属性的对象,都将被认为是空的</b>';
echo '<br/>';
$s = '';
echo 'empty($s) ->'.empty($s); //空字符串是空的,返回1
echo '<br/>';
$n1 = 0;
$n2 = 1;
$n3 = 2;
echo 'empty($n1) ->'.empty($n1); //0是空的,返回1
echo '<br/>';
echo 'empty($n2) ->'.empty($n2); //1是不空的,返回false/空
echo '<br/>';
echo 'empty($n3) ->'.empty($n3); //2是不空的,返回false/空
echo '<br/>';
echo '<br/>';
?>
<?php
//其他测试函数
echo '其他测试函数'.'<br/>';
echo 'is_array()、is_double()、is_float()、is_real()、is_long()、is_int()、is_integer()、is_string()、is_object()、is_resource()、is_null()、is_numeric()'.'<br/>';
echo '<br/>';
echo '也可以通过调用一个函数来实现转换变量数据类型的目的'.'<br/>';
echo 'intval()、floatval()、strval()'.'<br/>';
$sum = 22.22;
echo '$sum是否为浮点数:'.is_float($sum);
echo '<br/>';
echo intval($sum); //将$sum的值,转换成Integer类型,并输出,但变量$sum的类型不变
echo '<br/>';
echo '可知,intval(),即GetIntegerValue,只是获取转换后的值,但并不对变量类型做类型转换。'.'<br/>';
echo '<br/>';
?>
<?php
echo '变量的作用域'.'<br/>';
echo '理解变量的作用域'.'<br/>';
echo ' 1.作用域是指一个脚本文件中某个变量在哪些地方可以使用或可见。'.'<br/>';
echo ' 2.内置超级全局变量可以脚本的任何地方使用和可见。'.'<br/>';
echo ' 3.常量,一旦被声明,将可以全局可见。即他们可以在函数内外使用。'.'<br/>';
echo ' 4.在一个脚本文件中声明的全局变量在整个脚本中是可见的,但不是在函数内部。'.'<br/>';
echo ' 5.函数内部使用的变量声明为全局变量时,其名称要与全局变量名称一致。'.'<br/>';
echo ' 6.在函数内部创建并被声明为静态的变量无法在函数外部可见,但是可以在函数的多次执行过程中保持改值。'.'<br/>';
echo ' 7.在函数内部创建的变量对函数来说是本地的,而当函数终止时,该变量也就不存在了。'.'<br/>';
echo '<b>';
echo ' PS:课中没有解释,所以,这里有我几个疑问。'.'<br/>';
echo ' 1.第4点似乎有书写错误,是“不止在函数内部”吧?'.'<br/>';
echo ' 2.函数内部创建的变量,是指的局部变量吗?见第7点。'.'<br/>';
echo ' 3.第6点说的是,静态的局部变量在函数终止后依然存在,并且可以不断操作他的值?'.'<br/>';
echo ' 4.第6点似乎有错字,应该是“保持该值”吧?'.'<br/>';
echo '</b>';
echo '<br/>';
?>
<?php
echo '超级全局变量'.'<br/>';
echo '$GLOBALS 所有全局变量数组'.'<br/>';
echo '$_SERVER 服务器环境变量数组'.'<br/>';
echo '$_GET 通过GET方法传递给当前脚本的变量数组'.'<br/>';
echo '$_POST 通过POST方法传递给当前脚本的变量数组'.'<br/>';
echo '$_COOKIE cookie变量数组'.'<br/>';
echo '$_FILES 与文件上传相关的变量数组'.'<br/>';
echo '$_ENV 环境变量数组'.'<br/>';
echo '$_REQUEST 所有用户输入的变量数组'.'<br/>';
echo '$_SESSION 会话变量数组'.'<br/>';
echo '<br/>';
?>
<?php
echo '常量'.'<br/>';
echo '1.常量一旦被定义之后,就不能再将更改。'.'<br/>';
echo '定义常量:define("TOTAL", 199);'.'<br/>';
echo '2.除了自定义常量之外,PHP还预定义了许多常量,详见phpinfo()命令。'.'<br/>';
echo '3.常量之允许定义为boolean、integer、float和string类型。这些类型都是标量数据。'.'<br/>';
echo '<br/>';
?>
PHP第一季视频教程.李炎恢.学习笔记(三)(第2章 基本语法(2))
最新推荐文章于 2018-11-28 20:01:10 发布