PHP 快速入门:构建动态网站的基础

引言

PHP,全称 Hypertext Preprocessor,是一种广泛用于创建动态网站的服务器端脚本语言。它易于学习,功能强大,能够与多种数据库系统(如 MySQL)集成,是 Web 开发者的常用工具之一。本文将带你快速了解 PHP 的基本概念和用法。


基础语法

输出

PHP 中没有专门的输入语句,但可以通过多种方式接收用户输入,如表单、URL 参数等。输出则主要通过 echoprint 函数实现。

php 复制代码
<?php
header("content-type:text/html;charset=utf-8");
echo 'hello world','<br>'; // echo 可输出多个字符串
print('hello'.'world'); // print 只能输出一个字符串
?>

基础类型

PHP 支持多种数据类型,包括字符串、整型、浮点型、布尔型等。var_dump 函数可用于输出变量的类型和值。

php 复制代码
$str = 'hello world';
var_dump($str); // 输出:string(11) "hello world"

$num1 = 123;
var_dump($num1); // 输出:int(123)

$pi=3.14;
var_dump($pi);
echo $pi;//结果:float(3.14) 3.14

$bool=true;
$bool1=1>2;
var_dump($bool);
var_dump($bool1);
echo $bool,$bool1;//结果:bool(true) bool(false) 1

运算符

PHP 的运算符与 JavaScript 类似,包括算术运算符、比较运算符、逻辑运算符等。

php 复制代码
$a=10;
$b=3;
echo "a+b=".$a+$b."<br>";//13
echo "a-b=".$a-$b."<br>";//7
echo "a*b=".$a*$b."<br>";//30
echo "a/b=".$a/$b."<br>";//3.3333333
echo "a%b=".$a%$b."<br>";//1
$a=1;
echo "a++=".$a++."<br>";//1
$a=1;
echo "++a=".++$a."<br>";//2
echo "a--=".$a--."<br>";//2
echo "--a=".--$a."<br>";//0

程序结构

分支结构

PHP 支持常见的 ifelse ifelse 分支结构,以及 switch 多分支结构。

php 复制代码
//分支
$age = 18;
if ($age >= 18) {
    echo "无视风险";
    exit;//终止程序
} 
if($age>18){
    die("禁止访问");//终止并且输出
}


$year=2016;
if($year%4==0 && $year%100!=0 || $year%400==0){
    echo "闰年";
}else{
    echo "平年";
}

//多分支
$score = 80;
switch ($score) {
    case $score >= 90:
        echo "优秀";
        break;
    case $score >= 80:
        echo "良好";
        break;
    case $score >= 70:
        echo "中等";
        break;
    case $score >= 60:
        echo "及格";
        break;
    default:
        echo "不及格";
        break;
}

循环结构

PHP 提供了 whiledo-whilefor 循环,以及 foreach 特定于数组的循环。

php 复制代码
<?php
$sum = 0;
$i=1;
while($i<=10){
    $sum = $sum + $i;
    echo $i.'+';
    $i++;
}
echo "=$sum";
-----------------------------------------------------------------------------------------
echo '<br>';
$sum = 0;
$i=1;
do{
    $sum += $i;
    echo $i.'+';
    $i++;
}while($i<=10);
echo "=$sum";
-----------------------------------------------------------------------------------------
$sum=0;
echo '<br>';
for($i=1;$i<=10;$i++){
    $sum += $i;
    echo $i.'+';
}
echo "=$sum";
?>
//结果:1+2+3+4+5+6+7+8+9+10+=55

复合类型

数组

PHP 的数组是一种强大的复合数据类型,可以存储多个值。数组分为数值数组和关联数组。

count/sizeof函数 获得数组长度

php 复制代码
//数值数组
$names = array("张三", "李四", "王五");$names[3] = '图图'; // 增加元素

for($tem=0;$tem<sizeof($names);$tem++){
    echo "names[$tem]",$names[$tem].'<br>';
}

foreach($names as$key=>$value){
    echo "names[$key]",$names[$key].'='.$value.'<br>';
}
php 复制代码
关联数组
$scores = array('张三'=>90,'李四'=>80,'王五'=>70);
foreach ($scores as $key => $value) {
    echo $key."的分数是".$value."<br>";
}

函数

PHP 函数用于执行特定任务,可以接受参数并返回值。

php 复制代码
function big($arr){
    $max =$arr[0];
    for($i=1;$i<count($arr);$i++){
        if($arr[$i]>$max){
            $max =$arr[$i];
        }
    }
    return $max;
}

echo big(array(1,2,3,4,5,6,7,8,9,10)); // 输出:10

类和对象

类和对象 类:定义事物的抽象特点(如角色类、射手类,射手类为角色类的子类)

对象:类的实例(某个具体的角色)

成员变量(角色属性,如攻击,防御,血量)

成员函数(角色技能)

php 复制代码
//创建角色类
class Person{
    var $name;
    var $attack;
    var $defense;
    var $life;
//构造函数,创建类时自动使用
    function __construct($name){
        $this->name=$name;
        $this->attack=100;
        $this->defense=50;
        $this->life=200;
    }
//方法,技能
    function da(){
        echo $this->name,'攻击了一下,打出了',$this->attack,'的伤害';
    }
//方法,购买装备
    function buy($equip){
        $this->attack+=$equip;
    }
}

//创建实例
$wang = new Person('王');
$wang->life = 300;//修改属性
//使用方法da
$wang->da();//使用方法(技能)
$wang->buy(100);
$wang->da();

结语

本文简要介绍了 PHP 的基本概念和用法,包括环境配置、基础语法、程序结构、复合类型、函数以及面向对象编程。PHP 是一种功能强大的服务器端脚本语言,适合于快速开发动态网站。希望本文能帮助你快速入门 PHP 编程。

相关推荐
没有了遇见18 分钟前
Android 通过 SO 库安全存储敏感数据,解决接口劫持问题
android
hsx66619 分钟前
使用一个 RecyclerView 构建复杂多类型布局
android
止观止20 分钟前
JavaScript对象创建9大核心技术解析
开发语言·javascript·ecmascript
hsx66620 分钟前
利用 onMeasure、onLayout、onDraw 创建自定义 View
android
守城小轩22 分钟前
Chromium 136 编译指南 - Android 篇:开发工具安装(三)
android·数据库·redis
whysqwhw1 小时前
OkHttp平台抽象机制分析
android
screenCui2 小时前
macOS运行python程序遇libiomp5.dylib库冲突错误解决方案
开发语言·python·macos
hsx6662 小时前
Android 内存泄漏避坑
android
whysqwhw2 小时前
OkHttp之okhttp-bom模块的分析
android
linux kernel2 小时前
第七讲:C++中的string类
开发语言·c++