【问题标题】:Code Resuable HTML UI elements PHP代码可重用 HTML UI 元素 PHP
【发布时间】:2012-04-05 03:13:31
【问题描述】:

我是 PHP 新手,目前正在为大学作业创建一个 PHP Web 应用程序。在开发过程中,我意识到用户界面中的许多元素被复制到我的应用程序的不同部分。例如,我可能在客户页面中有一个名为“新客户”(<a class="bigbutton" href=".......">New Client</a>) 的超链接按钮,而在项目页面中有另一个名为“新项目”(<a "bigbutton" href=".......">New Project</a>) 的超链接按钮。

通常,我可以复制构建客户页面上的按钮的 html 并更改内容以适应项目页面中的“新建项目”按钮。现在,如果我要将超链接按钮转换为标记,我将不得不转到该特定按钮的每个实例以将标记替换为标记,如果此按钮存在于这么多页面上,那么更新将非常耗时。

这只是一个简单的例子,然后我必须考虑跨多个页面的其他重复元素,例如面包屑、列表等。

有没有什么方法可以让我真正重用这些可能值得一看的 UI 元素?也许我可以尝试将这些元素中的每一个编码到类中,但现在我不确定。

任何提示、指针或资源都会非常有帮助和赞赏。

谢谢大家。

【问题讨论】:

    标签: php user-interface coding-style code-reuse


    【解决方案1】:

    您可以创建在调用时回显 HTML 的 PHP 函数,可选地包括一些配置内容,例如

    function make_button($id, $label) {
        echo '<button id="'.$id.'">'.$label.'</button>';
    }
    

    这可以用于页面的大块,或者只是小块。我用过的一些系统有一个 html_writer 类来处理这类事情,其他系统使用渲染方法,你传入一个对象,它会在页面上传回代表该对象的 HTML 字符串。

    由您决定。制作可在较大功能中重用的小功能也很好,例如:

    function make_buttons_from array($array) {
        foreach ($array as $id => $label) {
            $this->make_button($id, $label);
        }
    }
    

    此处的示例与它们的输出相呼应,但您也可以使用字符串连接来组装各个部分。再次,您的电话。没有真正正确的方法。

    【讨论】:

    • 感谢您的精彩回复。正如你所建议的那样,我试图寻找一些类似 html_writer 的类,我认为这可能会很好。我会进一步阅读它。再次感谢
    【解决方案2】:

    您可以采用各种特定的途径,但基本方法是在一个类中包含一组模板函数或方法,以构建您页面的所有常见元素。任何在页面之间共享(或只有微小更改)的内容都在这些函数中定义一次,您只需从每个页面调用函数,提供足够的信息以允许函数根据详细信息区分它应该如何显示其内容调用它的页面。

    如果您对一个公共元素进行了更改,您只需转到函数并对其进行更改,并以这种方式将其复制到所有页面。

    【讨论】:

    • @Jason-感谢您的及时回复。看了你的回复和上面的回复,我想我得到了一些很好的提示和建议。
    猜你喜欢
    • 2012-02-29
    • 1970-01-01
    • 1970-01-01
    • 2020-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-30
    相关资源
    最近更新 更多