Correcting teacher:天蓬老师
Correction status:qualified
Teacher's comments:
windows 下可使用的面板非常多,但是好用的其实没有几个,这里写三个,我自己用的是 phpEnv
小皮面板(phpstudy):这货原来叫 phpstudy,时间也很长了,功能很丰富,界面并不好看,一直在更新。但是稳定性就我个人感觉来说真不行,小问题非常多,我用的时间最久,由于不稳定让我删除的次数最多,当然这是我个人感觉
UPUPW:功能比较强大,界面也比小皮好看,但是每次创建站点后自定义的域名软件不会帮你设置下 hosts 文件,还要自己去设置,自己懒不想设置;如果你也懒也别用。不是说这种点小事自己还懒,因为面板很多,我肯定选择最让我用的最舒服的。精力放在学习代码上。
phpEnv:界面非常简单,但是功能都有。绑定了自定义域名也不用手动配置 hosts,稳定性和 upupw 也差不多,目前一直在用的集成。
[]
有了 php 集成环境后我们就好奇 php 是怎么运行的呢
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>将PHP写到HTML中</title>
</head>
<body>
<?php
// 一旦html文档中出现了php标签,那么这个文档的扩展名必须是php
//单号注释
/*
多行
注释
*/
// 短标签:需要在php配置文件中打开short_open_tag = on
echo 'hello,这是PHP输出的代码';
?>
<?php
echo '<h3>短标签输出的内容</h3>'
//如果只有一行语句,或者是最后一行代码可以不加;号
?>
<?='不加echo 输出的内容'?>
<?php
$str = '<h2 style="color:blue">短标签输出的内容</h2>';
?>
<?= $str ?>
<!-- 自定义输出格式 -->
<?php
echo '<p>hello world</p>';//echo 可以输出多个值并且没有返回值
print '<p>hello world</p>'; //print 只能输入一个值,有返回值
echo print '<p>hello world</p><hr>';
// printf (模板,要输出的数据)
// 1+2=3
printf('<hr>%d+%d=%d',1,2,1+2);
// %d 表示整数,%s表示字符串,%f表示浮点数
?>
<!-- sprintf,内容不输出,只返回
vprintf,支持数组参数
vsprintf,支持数组参数,内容不输出,只返回 -->
</body>
</html>
$passed = true;
echo $passed;
// 此显示为1,浏览器只能显示字符串,ECHO的时候会自动转为字符串,转为字符串就是“1”
// 可以使用gettype来获取数据类型
echo gettype($passed);
//如果想得到一个变量值 的类型的“字符串表达”
var_export($passed,true);
// 还可以用来输出PHP源代码
$res = var_export($passed,true);
echo $res;
// 同时看类型和值
echo '<hr>type:'.gettype($passed).'<br>value:'.var_export($passed,true);
//var_dump()内置的函数,既能看到值也能看到函数
echo "<hr>";
var_dump($passed); //主要用来调试,不能用于生产环境。可以输出多个值
如上代码中的变量
$passed
就是一个布尔类型,它的值要么为 false,要么为 true
数值型有两种,整型和浮点型
$price = 89.9;//这是浮点型
$number = 3; //这是整型
必须要使用“单引号”或者“双引号”作为定界符
$name = "admin";
$email = "admin@php.cn";
echo '<hr>name:'.$name.'email:'.$email.'<hr>';
// echo 'hello '你好''; 这里会报错
// 1.使用与定界符不同的引号类型
echo 'hello "你好"';
//2.将字符串内部的定界符号进行转义,转为失去定界符作用的普通字符
echo 'hello \'你好\'';
// \t:水平制表位,其实就是tab键,四个空格
echo "c:\web\table\index.html";
// 这里就需要将反斜线自身进行转义
echo "c:\\web\\table\\index.html";
$str = [1,"牛年大吉","5.5","false"];
//数组索引默认从0开始递增
echo 'id = ', $str[0],'<br>';
$str[4] = true;
$str[] = 243;
// 如果不写索引他会自动追加到最后一个索引
$lecture = [];
$lecture[]="111";
$lecture[]="222";
$lecture[]="333";
//数字索引依赖顺序,可以将数组成员的键名改为字符串,这样的话可以随机访问
$str = ['id'=>1,'ta'=>"牛年大吉",'num'=>"5.5",'is'=>"false"];
echo $str['id'],$str['ta'];
print_r($str);
echo '<pre>'.print_r($str).'</pre>';
类与对象:在不引起误会的场景下,可以混用;对象与实例:实例是对象的同义词
$a = 1;
$b = 2;
function sum($a,$b){
return $a .'+'.$b.'='.($a+$b);
}
echo sum($a,$b);
//写个容器将上面的代码进行封装,这个窗口就是:对象
//使用对象的本质是代码复用
class Demo{
//变量=》属性
private $a = 1;
private $b = 2;
public function sum(){
return $this->a .'+'.$this->b.'='.($this->a+$this->b);
}
}
$obj = new Demo();
echo $obj->sum(),"<br>";