PHP基础知识详细讲解

  • Post category:PHP

以下是“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()方法关闭连接。