Correcting teacher:天蓬老师
Correction status:qualified
Teacher's comments:你就是将二天的内容进行了整合, 不错的
计算机中的数据和代码都是通过二进制表示。(逢2进1)
任何需要执行的程序(代码), 都必须事先保存到计算机的内存中。
内存: 理解为宾馆的客房,客房有客人, 和房号, 客人就是数据, 房号就是地址编号(变量名)
计算机将信息进行分段存储, 分为二部分: 代码段, 数据段, 将数据和代码分别存入
在访问的时候, 由操作系统提供的保护机制, 防止越界访问(电脑蓝屏)
程序中的数据和代码。
数据: 变量表示, 放在数据段
代码: 函数表示, 放在代码段
//数据: 变量表示, 放在数据段
$site = 'php.cn';
//代码: 函数表示, 放在代码段
function get_site($webSite)
{
return $webSite . '欢迎您';
}
// 调用函数, 指令就是一条一条的进入到cpu
echo get_site($site);
代码解析:
<?php
: 起始标签?>
: 结束标签.html
更新为.php
echo
: 是php指令,不是函数,可以指定的内容,输出到默认的终端上显示,通常就是浏览器的窗口echo
: 输出的内容可以是纯文本, 纯文本中间是可以嵌入html代码,也可以打印一个或多个变量echo
: 无返回值print
,也是指令,不是函数,但有返回值echo ('abc');
<?php ... ?>
标签嵌入到html代码中?>
, 是可以省略的, 但是并不是任何时候都可以省掉的?>
当php与html混编的时候, 就不能省略,必须写上结束标记
纯php代码
<?php
echo 'php.cn';
<body>
<p>Hello</p>
<?php
echo '<p>php.cn</p>';
?>
<h2>php中文网</h2>
重要提示:
.php
.php
的文件,就必须在服务器的环境下远行,本地访问无效注释
#
, //
/* 一行或多行的注释文本 */
$a = 100;
标识符:命名规范:,只允许使用字母,数字和下划线,且不能以数字开头
PHP变量三要素
$
开头字符串, 数字或下划线组成,并且不能以数字开始
变量名严格区分大小写(PHP函数不区分大小写)$username
, $userName
变量$9a
非法,不能以数字开始
除了用户自定义变量, 系统为了方便用户, 还预定义一些变量
//预定义变量
echo '脚本名称: ' . $_SERVER['SCRIPT_NAME']. '<br>';
echo '浏览器: ' . $_SERVER['HTTP_USER_AGENT']. '<br>';
echo '服务器: ' . $_SERVER['SERVER_SOFTWARE']. '<br>';
echo 'GET请求参数: ' . $_GET['id'];
echo '<hr>';
$table;
if (is_null($table)) {
echo '$table 的值 null';
}
100 + 30 = 130; //有意义
abc - qer //无意义
100, 3.14, -9.8
'admin', "php.cn"
, 需要用单引号或双引号做为定界符进行封装。单引号不解析变量;双绰号解析变量
<?php
//双引号字符串中的变量
$name = '朱老师';
//单引号字符串中的变量不会被解析
echo '我是:$name'. '<br>';
//双引号字符串中的变量会被解析
echo "我是:$name". '<br>';
//{}定界符
echo "我是:${name}abc". '<br>';
//双引号中特殊字符会被解析
/*\t-制表符,四个空格
\" \" 转义
*/
echo "This\t 'is' a\t \"demo\"";
//大段字符串的输出,<<<Heredoc Heredoc; 功能相当于双引号,用于代码中有大量双引号时
//"<a href=\"www.php.cn\" id=\"abc\">xxxx</a>"
echo <<<DEREDOC
<h3 style="color: red">"PHP\t中文网"{$name}</h3>
HEREDOC;
echo <<< "HELLO"
<h3 style="color: green">"PHP\t中文网"{$name}</h3>
HELLO;
echo '<hr>';
// nowdoc: 功能与单引号创建的字符串类似
echo <<< 'NOWDOC'
<h3 style="color: green">"PHP\t中文网"{$name} 'php真香'</h3>
NOWDOC;
true | false
,通常用在逻辑判断中取值范围:
每种数据类型的取值范围不一样
存储方式:
类型说明:
$name = 'peter zhu'; $gender = 'male';
将变量输出的方式:
echo
:回显,无返回值print
:有返回值print_r
:var_export()
:可以生成变量的php源代码的字符串表示var_dump
:打印出变量详细信息,支持一次查询多个
<?php
$name = 'perter zhu';
$age = 30;
$isMarried = true;
//单值读取
//echo 回显,无返回值
echo '年龄:' .$age . '<br>';
echo $name .'年龄:' .$age . '<br>';
echo $name ,'年龄:' ,$age , '<br>';
echo '姓名:'.$name.'<br>';
//[]是数组
echo '姓名的第一个字母:' .$name[0].'<br>';
//推荐{}
echo '姓名的第一个字母:' .$name{0}.'<br>';
print('年龄:' .$age . '<br>');
//print 有返回值
echo print('年龄:' .$age . '<br>');
echo '<hr>';
// 第二个参数true, 不是输出, 而是返回return
echo print_r($name, true);
echo '<hr>';
// 复合数据, 数组
$data = range(1,20,2);
// 数组
$result = print_r($data, true);
// 字符串
//echo gettype($result);
//print_r($result);
echo '<pre>' . $result . '</pre>';
echo '<hr>';
echo $name . '<br>';
// var_export(): 可以生成变量的php源代码的字符串表示
var_export($name);
echo '<pre>' . var_export($data, true) . '</pre>';
//打印出变量详细信息,支持一次查询多个
var_dump($name, $age, $isMarried);
复合类型有二种类型: 数组和对象
数组
$arr[2]
,$user['id']
如果键名是字符串, 称为关联数组
对象
new
指令,调用一个称为构造函数的一个特殊函数创建,或者实例化一个类来创建$obj->table
, 或者$obj->getEmail()
null
, resourece
资源类型null
: 称为空类型, 当一个变量没有被初始化的时候,默认就是null
resourece
资源类型, 例如一个文件, 一张图片, 一个数据库的连接gettype($data)
settype($data, 'string')
, 这是永久性的intval($data)
, strval($data)
, 这种转换是临时性,原始类型并不改变is_int()
, is_string()
, is_array()
, is_object()
,is_null()
…