Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP-HTML-何时包含外部PHP文件_Php - Fatal编程技术网

PHP-HTML-何时包含外部PHP文件

PHP-HTML-何时包含外部PHP文件,php,Php,我仍在学习PHP,对页面的结构以及在当前页面中何时包含PHP页面有疑问。例如,我有一个页面,允许用户在数据库后端创建新记录。我首先检查到数据库的连接是否工作,如果是这样,我将显示空白表单。目前,我将其包括如下内容: <?php // show the required file if there were no login errors if (isset($loginError) && $loginError == '') { require 'newContac

我仍在学习PHP,对页面的结构以及在当前页面中何时包含PHP页面有疑问。例如,我有一个页面,允许用户在数据库后端创建新记录。我首先检查到数据库的连接是否工作,如果是这样,我将显示空白表单。目前,我将其包括如下内容:

<?php
// show the required file if there were no login  errors
 if (isset($loginError) && $loginError == '')  {
 require 'newContactInc.php'; 
}               
?>
但在我走得太远之前,我想知道这是否是最佳实践。我不想在父文件中包含太多的迷你php文件,但使用这种方法可以让我不必引用和转义html,例如,我可以使用:

<div class="form-group">
在我的include文件中,而不是

$html = '<div class=\"form-group\">';
echo $html;
etc

只是想知道在生成html时,是否有一种最佳实践方法可供使用,但只想有条件地显示它?

这是保持html独立的一种好方法。但是,如果您不打算在其他页面中重复使用该表单,则可以执行以下操作,将其包含在页面中,而无需将其作为字符串回显:

<?php 
    if (isset($loginError) && $loginError == '') : 
?>
<form>    </form>
<?php
    endif;
?>
这将仅在满足条件时打印表单


总的来说,虽然您最好将页面分解为可重用的组件并包含它们,这不仅是一种更干净的方法,可以防止不必要的重复标记,而且如果您想在整个网站上进行更改,您只需编辑一个文件,而不是打开使用该组件的每个页面并进行更改。

谢谢-我以前见过这种结构,但从未真正了解它的工作原理。我不知道你可以将if/end语句分割成多个块。顺便说一句,第2行末尾应该是分号吗?冒号是正确的语法。分号会破坏它。我补充说,虽然你应该继续做你正在做的事情,因为这是一个更好的方法,用php构建网页,允许更多的重用性和更容易的网站范围的更改。