为什么只有PHP允许在HTML代码中,但其他语言使用CGI?

时间:2017-11-15 23:54:50

标签: php python apache server cgi

例如,为什么Python的开发人员不会在HTML代码中使用像PHP这样的Python的解释器?

我希望我的问题不是很愚蠢,如果是的话,抱歉。

1 个答案:

答案 0 :(得分:1)

PHP最初主要是作为用于创建Web应用程序的编程语言而设计的(该名称代表个人主页)。为了使这更容易,他们将语言紧密地集成到网页中。事实上,在早期版本的PHP中,代码嵌入在HTML注释中(类似于早期Javascript必须嵌入的方式)。 PHP History页面显示了这个示例(这称为PHP / FI - PHP Forms Interpreter):

<!--include /text/header.html-->

<!--getenv HTTP_USER_AGENT-->
<!--ifsubstr $exec_result Mozilla-->
  Hey, you are using Netscape!<p>
<!--endif-->

后来,PHP的名称成为递归的acrynym PHP超文本预处理器。这表明它打算嵌入HTML中,就像C预处理器代码嵌入C和C ++程序一样。

嵌入式特性使得编写具有大量静态HTML的网页变得容易,其中散布着动态代码。在任何其他语言中,您需要数百或数千个print语句,而PHP允许您从脚本模式中逃脱到所有静态部分的原始输出。

没有理由不能以类似的方式将其他语言嵌入到HTML中。但是设计师根本没有将其作为优先事项,他们将它们视为更通用的语言,因此他们没有将此功能纳入其中。 PHP可以作为一种独立的编程语言使用(我的公司在cron作业中广泛使用它),它不仅仅是它的原始设计重点。