如何防止favicon.ico请求
PHP基础语法
书写 php
+ php 代码书写在一个 .php 后缀的文件里面
+ 必须写在 php 标签内部<?php ?>
+ 写在外面的内容, 当你在浏览器去运行这个 php 文件的时候
+ 都会被当成 html 来解析
注意:
1. 每一句话都要有分号
2. 你要运行 php 文件, 必须启动 apache, 在服务器环境下访问
=> 直接本地打开, 浏览器是不认识的
学习 php 代码的书写
1. 定义变量
=> $名字 = 值;
=> 不需要关键字
=> 你的变量名叫做 $名字
=> 例子: $num = 100;
=> 将来使用的时候就是 $num
<?php
// 定义变量
$num = 100;
// 定义了一个变量叫做 $num 值是100
?>
2. 输出语法
=> 说明:
-> 输出并不明确输出给谁, 只是单纯的输出
-> 关键看是谁找我要
-> 当你用浏览器访问这个 php 文件的时候, 那么我的输出语法就输出给浏览器
-> 当你用 JS 这个语言访问 php 文件的时候, 那么文件里面的输出就给JS
2-1. echo 你要输出的内容;
2-2. print_r(你要输出的内容);
2-3. var_dump(你要输出的内容);
=> 三种输出语法的区别:
2-1. echo 只能输出基本数据类型
-> 输出 true 的时候会转换成 1, 输出 false 的时候, 会转换成 空
-> 不能输出数组和对象
-> echo不带括号可以一次输出多个参数,如果带括号只能输出一个参数
2-2. print_r
-> 所有数据类型都能输出
2-3. var_dump()
-> 可以输出所有数据类型
-> 每一个数据类型在输出的时候都会有详细信息输出
// 三种输出语法的区别
// echo
$num = 100;
$str = 'hello world';
$b1 = true;
$b2 = false;
$arr = [1, 2, 3];
echo $num;
echo $str;
echo $b1;
echo $b2;
echo $arr;
// print_r()
print_r($num);
print_r($str);
print_r($b1);
print_r($b2);
print_r($arr);
// var_dump()
var_dump($num);
var_dump($str);
var_dump($b1);
var_dump($b2);
var_dump($arr);
3. 解决中文乱码
=> 当你在 php 输出内容的时候, 会出现中文乱码
=> 分析原因:
-> 因为 php 的输出只是单纯的输出了内容
-> 没有告诉浏览器我输出的内容你用什么字符集来给我解析
=> 解决问题:
-> 只要在输出之前告诉浏览器, 我的数据格式是什么
-> 告诉浏览器一些事情, 我们使用 header()
<?php
// 告诉浏览器一些事情
// 今后我给你的内容都是 utf 格式的字符串, 你当做 html 来解释
header('content-type: text/html;charset=utf-8;');
// 直接输出中文
echo "你好 世界!";
?>
但实际上,我没用header方法输出中文也没有问题, 还没弄明白怎么回事…
4. 字符串
=> php 里面字符串分成两种
1. 单引号: 普通字符串
2. 双引号: 特殊字符串(可以直接解析变量)
=> 字符串拼接
-> php 里面 加号(+) 只有一个作用, 就是数学运算
-> 拼接字符串使用 点(.)
<?php
// 字符串
$age = 18;
$str = '你好, 我是小明, 我今年 $age 岁了';
$str2 = "你好, 我是小明, 我今年 $age 岁了";
echo $str;
echo '<br>';
echo $str2;
// 拼接字符串使用 点(.)
$str3 = $str . '---' . $str2;
echo '<br>';
echo $str3;
?>
5. 流程控制语句
=> if(){}
=> switch(){}
=> for(){}
=> while(){}
=> do{} while()
<?php
// for 循环
// JS
// for(var i = 0; i < 10; i++){}
// PHP
for($i = 0; $i < 10; $i++){
echo $i . '-----<br>' ;
}
?>
for循环后面不需要分号
6. 数组
1. 索引型数组
=> $arr = array(数据1, 数据2, 数据3, ...)
=> 按照索引进行排列, 等价于 JS 里面 [数据1, 数据2, 数据3, ...]
2. 关联型数组
=> $arr = array(key => value, key2 => value2, key3 => value3, ...)
=> 按照键值对排列, 等价于 JS 里面的 {key: value, key2: value2, ...}
访问数组里面的成员
=> 只有一种语法
=> 数组名[索引]
=> 数组名[key]
// 定义一个索引型数组
$arr = array('hello', 'world');
// 也可以写成 [] 的形式
$arr2 = ['hello', 'world'];
print_r($arr);
print_r('<br>');
print_r($arr2);
// 定义一个关联型数组
$arr3 = array(
name => 'Jack',
age => 19
);
print_r($arr3);
echo '<br>';
echo $arr[0];
echo '<br>';
echo $arr[1];
echo '<br>';
echo $arr3["name"];
echo '<br>';
echo $arr3["age"];