PHP 新手入门指南 - 逻辑与显示分离

2017-06-17  本文已影响155人  chansey

这里先介绍一个软件设计的编程模式:MVC

MVC 全名是 Model View Controller,是模型 (model)-视图(view)-控制器(controller) 的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。

借鉴这一点,我们在编写 PHP 网页程序时,如果将 PHP 业务逻辑和页面展示分离,可以让程序的结构更为清晰,有助于开发和维护。

小实践

原始的编码文件内容如下:

// ~/project/index.php
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        header {
            background: #e3e3e3;
            padding: 2em;
            text-align: center;
        }
    </style>
</head>
<body>
    <header>
        <h1>
            <?php echo "Hello, " . htmlspecialchars($_GET['name']); ?>
        </h1>
    </header>
</body>
</html>

新建一个 index.view.php 文件,内容如下:

// ~/project/index.view.php
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        header {
            background: #e3e3e3;
            padding: 2em;
            text-align: center;
        }
    </style>
</head>
<body>
    <header>
        <h1>
            <?php echo $greeting; ?>
        </h1>
    </header>
</body>
</html>

将原有的 index.php 内容更改为:

// ~/project/index.php
<?php

$greeting = "Hello, " . htmlspecialchars($_GET['name']);;

require "index.view.php";

打开终端运行:php -S localhost:8000
打开浏览器地址栏访问:http://localhost:8000/?name=Jacob

可以看到,这和之前的效果一样。

没错,这样就完成了逻辑和显示的分离,编码的层次变得更为清晰了。

觉得如何呢?

上一篇下一篇

猜你喜欢

热点阅读