以下是“PHP基础知识详细讲解”的完整使用攻略,包括变量、数据类型、运算符、流程控制、函数、数组、面向对象编程等内容。
变量
在PHP中,变量用于存储数据,可以是数字、字符串、数组、对象等。变量名以$符号开头,后面跟着变量名。以下是一个示例:
$name = 'John';
$age = 30;
$height = 1.75;
在这个示例中,我们定义了三个变量:$name、$age和$height。$name是一个字符串变量,$age是一个整数变量,$height是一个浮点数变量。
数据类型
PHP支持多种数据类型,包括整数、浮点数、字符串、布尔值、数组、对象、NULL和资源。以下是一个示例:
$int = 123;
$float = 3.14;
$string = 'Hello, world!';
$bool = true;
$array = array('apple', 'banana', 'orange');
$object = new stdClass();
$null = null;
$resource = fopen('file.txt', 'r');
在这个示例中,我们定义了多个变量,每个量都有不同的数据类型。
运算符
PHP支持多种运算符,包括算术运算符、比较运算符、逻辑运算符和位运算符。以下是一个示例:
$a = 10;
$b = 20;
// 算术运算符
$c = $a + $b; // 加法
$c = $a - $b; // 减法
$c = $a * $b; // 乘法
$c = $a / $b; // 除法
$c = $a % $b; // 取模
// 比较运算符
if ($a == $b) { // 等于
// ...
}
if ($a != $b) { // 不等于
// ...
}
if ($a > $b) { // 大于
// ...
}
if ($a < $b) { // 小于
// ...
}
if ($a >= $b) { // 大于等于
// ...
}
if ($a <= $b) { // 小于等于
// ...
}
// 逻辑运算符
if ($a && $b) { // 与
// ...
}
if ($a || $b) { // 或
// ...
}
if (!$a) { // 非
// ...
}
// 位运算符
$c = $a & $b; // 按位与
$c = $a | $b; // 按位或
$c = $a ^ $b; // 按位异或
$c = ~$a; // 按位取反
$c = $a << $b; // 左移
$c = $a >> $b; // 右移
在这个示例中,我们使用了多种运算符,包括算术运算符、比较运算符、逻辑运算符和位运算符。
流程控制
PHP支持多种流程控制语句,包括if语句、switch语句、while循环、for循环、foreach循环等。以下是一个示例:
// if语句
if ($a > $b) {
// ...
} elseif ($a < $b) {
// ...
} else {
// ...
}
// switch语句
switch ($a) {
case 1:
// ...
break;
case 2:
// ...
break;
default:
// ...
break;
}
// while循环
while ($a < $b) {
// ...
}
// for循环
for ($i = 0; $i < 10; $i++) {
// ...
}
// foreach循环
foreach ($array as $value) {
// ...
}
在这个示例中,我们使用了多种流程控制语句,包括if语句、switch语句、while循环、for循环和foreach循环。
函数
PHP支持函数,可以将一段代码封装成一个函数,方便重复使用。以下是一个示例:
function add($a, $b) {
return $a + $b;
}
$c = add(10, 20);
在这个示例中,我们定义了一个add()函数,用于计算两个数的和。我们可以使用add()函数计算10和20的和,并将结果存储在$c变量中。
数组
PHP支持数组,可以用于存储多个值。以下是一个示例:
$array = array('apple', 'banana', 'orange');
在这个示例中,我们定义了一个数组,包含三个元素:’apple’、’banana’和’orange’。
面向对象编程
PHP支持面向对象编程,可以使用类和对象来组织代码。以下是一个示例:
class Person {
private $name;
private $age;
public function __construct($name, $age) {
$this->name = $name;
$this->age = $age;
}
public function getName() {
return $this->name;
}
public function getAge() {
return $this->age;
}
}
$person = new Person('John', 30);
$name = $person->getName();
$age = $person->getAge();
在这个示例中,我们定义了一个Person类,包含$name和$age属性,以及__construct()、getName()和getAge()方法。我们可以使用new关键字创建一个Person对象,并使用getName()和getAge()方法获取对象的属性。
示例1:使用PHP计算圆的面积
<?php
$radius = 5;
$area = pi() * pow($radius, 2);
echo "圆的面积是:" . $area;
?>
在这个示例中,我们定义了一个$radius变量,表示圆的半径。我们使用pi()函数获取圆周率,使用pow()函数计算半径的平方,然后将结果存储在$area变量中。最后,我们使用echo语句输出圆的面积。
示例2:使用PHP连接MySQL数据库
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 执行SQL语句
$sql = "SELECT * FROM MyGuests";
$result = $conn->query($sql);
// 输出数据
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
}
} else {
echo "0 结果";
}
// 关闭连接
$conn->close();
?>
在这个示例中,我们使用mysqli类连接到MySQL数据库,并执行一个SELECT语句。我们使用fetch_assoc()方法获取查询结果,并使用echo语句输出结果。最后,我们使用close()方法关闭连接。