Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/235.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
在HTML中调用PHP函数_Php_Html_Function_Echo_Call - Fatal编程技术网

在HTML中调用PHP函数

在HTML中调用PHP函数,php,html,function,echo,call,Php,Html,Function,Echo,Call,我是Php新手。我相信这是一个简单的问题。我试图在html文件的标记中调用函数getDateExpected。我希望它能像下面这样以文本形式返回数字。这是怎么做到的?我看到php脚本将使用一些事件运行,比如单击按钮,但在本例中没有单击任何内容。该页面仅被加载。我知道javascript使用{},但这对php是可能的,还是仅仅用于处理来自表单的请求 <?php //include "landing.php"; function getDateExpected($desired

我是Php新手。我相信这是一个简单的问题。我试图在html文件的标记中调用函数getDateExpected。我希望它能像下面这样以文本形式返回数字。这是怎么做到的?我看到php脚本将使用一些事件运行,比如单击按钮,但在本例中没有单击任何内容。该页面仅被加载。我知道javascript使用{},但这对php是可能的,还是仅仅用于处理来自表单的请求

<?php
    //include "landing.php";
    function getDateExpected($desired){
      $date = date ("d");
      if($date << $desired){
        echo $desired - $date;
      }else{
        echo $date-$desired;
      }
    }

?>

<!DOCTYPE html>
<html>
<title>Coming Soon</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="http://www.w3schools.com/lib/w3.css">
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Raleway">
<style>
body,h1 {font-family: "Raleway", sans-serif}
body, html {height: 100%}
.bgimg {
    background-image: url('obg.png');
    min-height: 100%;
    background-position: center;
    background-size: cover;
}
</style>
<body>

<div class="bgimg w3-display-container w3-animate-opacity w3-text-white">
  <div class="w3-display-topleft w3-padding-large w3-xlarge">
    Potion
  </div>
  <div class="w3-display-middle">
    <h1 class="w3-jumbo w3-animate-top">COMING SOON</h1>
    <hr class="w3-border-grey" style="margin:auto;width:40%">
    <p class="w3-large w3-center">getDateExpected(21) days left</p>
  </div>
  <div class="w3-display-bottomleft w3-padding-large">
    <a href="http://www.twitter.com/" target="_blank">Adrian</a>
  </div>
</div>

</body>
</html>

马上就来
正文,h1{字体系列:“Raleway”,无衬线}
正文,html{height:100%}
.bgimg{
背景图片:url('obg.png');
最小高度:100%;
背景位置:中心;
背景尺寸:封面;
}
饮剂
马上就来

GetDate预计还剩21天


正如Fred ii所评论的,您需要PHP标记 改变这个

<p class="w3-large w3-center">getDateExpected(21) days left</p>
  if($date << $desired)

GetDate预计还剩21天

对此

<p class="w3-large w3-center"><?php getDateExpected(21);?> days left</p>
if($date < $desired)

还剩几天

改变这个

<p class="w3-large w3-center">getDateExpected(21) days left</p>
  if($date << $desired)

如果($date您的web服务器尝试将
.html
作为静态页面执行,因为此扩展与PHP语言没有关联,因此不会使用PHP引擎进行解析。 为此,您需要确保页面具有
.php
扩展名(与php引擎关联)。
当您要执行
.html
页面时,您可能需要在web服务器上激活mod rewrite。
如果您使用的是Apache,则可以按照说明执行此操作。
然后,您希望指示Apache将所有*.html请求重定向到相应的*.php文件,而不向浏览器显示实际扩展名(.php)。 这样,用户将在浏览器中输入url
http://www.example.com/foo.html
和web服务器,一旦收到文件的GET请求
foo.html
将匹配相应的.php脚本(相同的名称,不同的扩展名)并使用php自动执行页面
foo.php
,而不向用户浏览器显示URL的更改

“感谢您的帮助,弗雷德!您已经完全回答并解决了所有问题,但不幸的是,我无法选择您的答案,因为这只是一个评论):如果您能给出正确的答案,我将选择您的答案,以供未来需要更好理解的访客使用–阿德里安德韦拉”

(这是一份迟交的答复,全面概述了代码的失败,并应OP的要求发布):

您发布的代码存在一些问题

让我们一个接一个地看一下:

if($date << $desired)
除此之外,如评论所示;很明显,您试图将其作为
.html
文件扩展名运行,根据我留下的一条评论,当看到这个问题时,您会想到这一点:

默认情况下,该文件扩展名将不会解析PHP指令,
.PHP
将在PHP环境中与安装的Web服务器一起运行

但是,如果您指示服务器将
.html
文件视为PHP并支持它,那么将它们作为PHP运行并非不可能

要在php环境中和实时(本地)服务器上运行,语法如下:

  • http://localhost/file.php
    file:///file.xxx

函数getDateExpected($desired){$date=date(“d”);if($date

getDateExpected(21)天剩余时间

如果您打算在函数名周围执行php标记,则函数名周围没有php标记。您需要将php代码包装在php标记中-

剩余天数

如果($date还请确保您是在安装了Web服务器的php环境下运行此功能,并使用适当的扩展来解析php指令。谢谢。我更改了以下内容,并且在进行更改后,该值不会显示在所需的位置。还有什么我做错了吗?如果我在php文件中调用该函数,它会工作“并将此…更改为此”-这是有原因的,事实上是有具体原因的。感谢弗雷德在你的多部分解决方案中详细而透彻的解释。我犯了一些非常简单的错误,任何人都应该从中吸取教训。接受你的完整答案!@AdrianDevera非常欢迎你,当像你这样的人感谢您提供了一个详细的答案,以便从中学习,而不是被抛出代码“只是因为”和“只是修复和运行”,谢谢您,干杯
<p class="w3-large w3-center"><?php getDateExpected(21) ;?> days left</p>