PHP环境搭建与基础语法
一、PHP环境搭建
1.1 常用的 php 集成环境
windows: phpstudy,wampserver, xampp,upupw…
macos: xampp, mamp pro(收费)
目前已经Windows已经用pypstudy搭建好了开发环境,macos上使用的是mamp pro。
1.2 php程序运行原理
用户通过浏览器发起一个请求,由于Web服务器只识别html,其它类型的就会交给对应的软件进行处理,所以当用户请求一个php文件,Apache就会把该文件交给php软件进行处理,然后解析称为客户端能够识别的资源并返回。
二、PHP与HTML混编的方式与短标签的使用
2.1 PHP语法的基础
PHP以<?php
作为标识符的起始,然后加入PHP语句并加上一个?>
标识符来退出PHP模式。可以将PHP代码写到扩展名为“.php”的HTML文件中的任意位置,是要文档中有PHP起始标签和结束标签,因此,用户可以根据自己的需要在HTML中书写PHP代码:
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>将php写到html文档中</title>
</head>
<body>
<?php
echo "Hello World!"
?>
</body>
</html>
2.2 PHP标签解读
PHP标签常用的三种模式:
- 以
<?php
开始和?>
结束的标记是标准模式,属于XML风格; - 以
<?
开始和?>
结束的标记是短标签风格,这个需要注意php.ini
中是否开启了短标签:short_open_tag = On
; - 以
<%
和%>
标记属于ASP风格标记。
- 案例:
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>将php写到html文档中</title>
</head>
<body>
<?php
echo "Hello World!"
?>
<?php $str = '<h3 style="color:blue">短标签输出的内容</h3>' ?>
<?=$str?>
</body>
</html>
三、PHP常用的数据类型
PHP中支持8种原始类型,布尔类型, 字符串, 整型,浮点型,字符串,数组,对象,资源,NULL。
3.1 布尔类型(Boolean)
boolean表达了ture或false,即“真”或“假”,它是PHP逻辑控制的判断依据。
在PHP中,布尔型并不是只有ture和false,以下情况被作为boolean时也都被判定为false:
- 布尔值FALSE;
- 整型值0为假,-1和其他非零值(不论正负)一样,被认为是true;
- 浮点型值0.0;
- 空白字符串和字符串“0”;
- 特殊类型NULL。
var_dump((bool) ""); // bool(false)
var_dump((bool) 1); // bool(true)
var_dump((bool) -2); // bool(true)
var_dump((bool) "foo"); // bool(true)
var_dump((bool) 2.3e5); // bool(true)
var_dump((bool) array(12)); // bool(true)
var_dump((bool) array()); // bool(false)
var_dump((bool) "false"); // bool(true)
var_dump((bool) ""); // bool(false)
var_dump((bool) "0"); // bool(false)
3.2 整型(integer)
整型变量用于存储整数,例如:{…,-3,-2,-1,0,1,2,3…},这是我们通常用10进制数值,还有十六进制,八进制,如下所示:
$int = 1234; // 十进制正整数
$int = -1234; // 十进制负数
$int = 0123; // 八进制数,相当于十进制的83
$int = 0x1A; // 十六进制数,相当于十进制的26
3.3 浮点型(float或double)
浮点数是包含小数部分的数。
$float = 1.234; // 这是一个浮点数,可以使用正负的形式表示
$float = 1.2e3; // 科学计数法,相当于1.2*10的3次方,即:1200
$float = 7e-10; // 科学计数法,相当于7*10的-10次方,即:0.0000000007
3.4 字符串(string)
3.4.1 单引号
指定一个字符串的最简单方法就是用单引号(’)括起来,用单引号引起来的字符串中不能再包含单引号,否则会报错。如果要使用在单引号引起来的字符串种输出单引号,需要用转义字符(\)进行转义。
// 这是一个单引号表示的简单字符串
$str = 'this is a simple string';
// 在单引号中使用单引号
$str = 'this is a \'simple\' string';
// 定义一个变量
$str = 100;
// 单引号中的变量会原样输出,并不会被解析
echo 'this is $str'; // this is $str
3.4.2 双引号
如果用双引号(”)包含字符串,字符串中的变量可以被解析。
$str = 'World';
// 下面双引号中的变量就可以解析
echo "Hello, $str"; // Hello, World
// 使用{}包含起来,就可以将变量分离出来解析了。
echo "Hello, ${str}!"; // Hello, World!
3.5 数组(array)
数组是PHP中非常重要的符合数据类型。
$arr = ["foo", "bar", "PHP"];
// 通过索引来访问数组中的每个元素
echo $arr[0]; // foo
echo $arr[1]; // bar
echo $arr[2]; // PHP
3.6 对象(object)
在PHP中,数组和对象一样都是一种复合数据类型,但是对象是一种更高级的数据类型。一个对象类型的变量,是由一组属性值和一租方法构成的。
// 使用关键字class定义一个类:Person
class Person {
// 在类中定义一个公有的成员属性$name供外部访问。
public $name;
// 在类中定义一个成员方法getName()
function getName() {
echo "my name is {$this->name}"
}
}
// 使用new关键字实例化类
$p = new Person;
// 通过对象访问对象中的成员属性并赋值
$p->name = "残破的蛋蛋";
$p->getName(); // my name is 残破的蛋蛋