从零开始:PHP文件编写全攻略,附用户注册登录系统案例
如何编写PHP文件:详细指南与案例
PHP(Hypertext Preprocessor)是一种广泛使用的开源服务器端脚本语言,特别适用于Web开发。PHP文件通常以.php
为扩展名,并且可以嵌入HTML代码中。下面将详细介绍如何编写PHP文件,包括基本语法、变量、函数、控制结构、数据库连接等内容,并提供一个完整的案例。
1. PHP文件的基本结构
<?php
// 这是一个单行注释
/*
这是一个多行注释
*/
echo "Hello, World!";
?>
2. 变量与数据类型
PHP是一种弱类型语言,变量不需要声明类型。变量名以$
开头。
<?php
$name = "John"; // 字符串
$age = 25; // 整数
$height = 1.75; // 浮点数
$is_student = true; // 布尔值
echo "Name: $name, Age: $age, Height: $height, Is Student: $is_student";
?>
3. 数组
<?php
// 索引数组
$fruits = array("Apple", "Banana", "Cherry");
echo "Fruit 1: " . $fruits[0];
// 关联数组
$person = array("name" => "John", "age" => 25, "height" => 1.75);
echo "Person Name: " . $person["name"];
?>
4. 控制结构
PHP支持常见的控制结构,如if
、else
、switch
、for
、while
等。
<?php
$age = 18;
if ($age >= 18) {
echo "You are an adult.";
} else {
echo "You are a minor.";
}
for ($i = 0; $i < 5; $i++) {
echo "Number: $i\n";
}
?>
5. 函数
<?php
function greet($name) {
return "Hello, $name!";
}
echo greet("Alice");
?>
6. 数据库连接
PHP常用于与数据库交互,以下是一个简单的MySQL数据库连接示例。
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "testdb";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
echo "Connected successfully";
// 关闭连接
$conn->close();
?>
7. 完整案例:用户注册与登录系统
以下是一个简单的用户注册与登录系统的PHP代码示例。
<?php
// 数据库连接
$conn = new mysqli("localhost", "root", "", "testdb");
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
// 注册用户
if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['register'])) {
$username = $_POST['username'];
$password = password_hash($_POST['password'], PASSWORD_DEFAULT);
$sql = "INSERT INTO users (username, password) VALUES ('$username', '$password')";
if ($conn->query($sql) === TRUE) {
echo "User registered successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
}
// 用户登录
if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_POST['login'])) {
$username = $_POST['username'];
$password = $_POST['password'];
$sql = "SELECT * FROM users WHERE username='$username'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
$row = $result->fetch_assoc();
if (password_verify($password, $row['password'])) {
echo "Login successful";
} else {
echo "Invalid password";
}
} else {
echo "User not found";
}
}
$conn->close();
?>
<!-- HTML表单 -->
<form method="post" action="">
<h2>Register</h2>
<input type="text" name="username" placeholder="Username" required>
<input type="password" name="password" placeholder="Password" required>
<button type="submit" name="register">Register</button>
</form>
<form method="post" action="">
<h2>Login</h2>
<input type="text" name="username" placeholder="Username" required>
<input type="password" name="password" placeholder="Password" required>
<button type="submit" name="login">Login</button>
</form>
总结
通过以上步骤,您可以创建一个简单的PHP文件,并实现基本的Web功能。PHP的灵活性和强大的功能使其成为Web开发的首选语言之一。