PHP 3:从Login界面谈PHP标记

原文:PHP 3:从Login界面谈PHP标记

前一篇文章简要介绍了此实例。
OK,我们就从第一个页面Login页面入手吧。
还是看看界面

怎么样,是不是很想指导它到底是如何实现的呢?好的,看看其代码吧:

1<?php
2 require_once('bookmark_fns.php');
3 do_html_header('');
4
5 display_site_info(); 
6 display_login_form();
7
8 do_html_footer();
9?>

看见这些代码你有什么看法?OK,我下面一一做出解释:
1)PHP如何从HTML分离
   看看第1行和第9行,那么是
 

<?php
  
?>

当 PHP 解析一个文件时,会寻找开始和结束标记,这里,开始标记是<php,结束符号是?>,如果你使用过ASP.NET,肯定还记得<% %>,它们的作用有点类似。这些标记告诉 PHP 开始和停止解释这些标记内包含的代码。使用了这些标记,PHP就会忽略它们之外的内容。这样它们可以嵌入到各种文档中,当然最常见的就是嵌入HTML页面里。
 上面介绍的是最常见的HTML分离,那么有没有更高级的呢?当然有。例子如下:

 1<?php
 2 if($IsFinished)
 3  {
 4?>
 5  <strong>Congrats on you! You finished the job!</strong>
 6<br>
 7<?php
 8  }
 9  else
10  {
11?>
12<strong>I'm sorry to hear that.Go on doing it!</strong>
13<?php
14}
15?>

此例可正常工作,并且结果是
    I'm sorry to hear that.Go on doing it!
 因为当 PHP 碰到结束标记 ?> 时,就简单地将其后的内容原样输出直到碰到下一个开始标记为止。当然,上面的例子很做作,但是对输出大块的文本而言,脱离 PHP 解析模式通常比将所有内容用 echo() 或者 print() 输出更有效率。

可以在 PHP 中使用四对不同的开始和结束标记。其中两种,<?php ?> 和 <script language="php"> </script> 总是可用的。另两种是短标记和 ASP 风格标记,可以在 php.ini 配置文件中打开或关闭。尽管有些人觉得短标记和 ASP 风格标记很方便,但移植性较差,通常不推荐。 以上文字来自PHP网站。
OK,总结一下,PHP标记有4种。
分别是:
(1). 上面的这种,例子是  

1<?php echo "this is the first style" ?>

(2) 类似于JavaScirpt的,可以为  

1<script language="php">
2echo "this is the second style, similiar with  JavaScript.:)"
3</script>

(3) 短标记类型,可以为

1<? echo 'this is the third style'; ?>

或者

1   <?= expression ?> This is a shortcut for "<? echo expression ?>"

(4) ASP风格的,可以为

1<% echo 'ASP-style tags'; %>
2   <%= $variable; # This is a shortcut for "<% echo . . ." %> 

一般来说,1,2总是可以用的,但是第一种看起来更加常用。
至于第3种,仅当php.ini 配置文件中的指令 short_open_tag 打开后才可用,或者在 PHP 编译时加入了 --enable-short-tags 选项。
至于第4中,仅当 php.ini 配置文件中的指令 asp_tags 打开后才可用。

注意:以上例子已经测试通过。
2) require_once

 这个问题类似C/C++里的include,将头文件引入,同时也类似于C#里的using namespace,Java里的import等。这里就是将bookmark_fns.php文件引入。但是仅仅这些吗?不是。它与 require() 语句类似,唯一区别是如果该文件中的代码已经被包含了,则不会再次包含.说着说着,还有2个函数,include()include_once()require()include() 除了怎样处理失败之外在各方面都完全一样。include() 产生一个警告require() 则导致一个致命错误。换句话说,如果想在丢失文件时停止处理页面,那就别犹豫了,用 require() 吧。include() 就不是这样,脚本会继续运行。同时也要确认设置了合适的include_path。

3)函数
  下面有4个函数,即:

do_html_header('');

 display_site_info(); 
 display_login_form();

 do_html_footer();

你可能比较纳闷,这些家伙们是从哪里出来的呢?不要紧,可以这么理解,类似于C语言,require_once引用了bookmark_fns.php头文件,这些函数都包括在这个头文件里了。打个比方,但是有些叫法可不能这么叫的.
说说这些函数是干什么用的吧。
do_html_header('')是用来页面的头。即PHPBookmark。
 display_site_info()显示Site的信息,即“Store your bookmarks online with us!..."这段话的。
display_login_form()显示登录的那部分。
do_html_footer()显示页尾的。
至于它们怎么定义,在一篇文章里描述。

时间: 2024-10-21 12:12:30

PHP 3:从Login界面谈PHP标记的相关文章

PHP 4:从Login进一步看到的

原文:PHP 4:从Login进一步看到的我们已经在PHP 3:从Login界面谈PHP标记谈到了PHP标记,不过其页面代码有一句 require_once('bookmark_fns.php'); 那我们就看看bookmark_fns.php这个文件吧.其代码如下:  1 <?php 2   // We can include this file in all our files 3   // this way, every file will contain all our function

PHP系列目录

原文:PHP系列目录PHP系列的对象是已经熟悉了一门或多门语言的开发人员.如果你是其中一份子,而且你也打算学习PHP,相信你根据本系列会很快掌握PHP的.欢迎大家给出意见或建议.同时也欢迎大家的批评与板砖.目录如下: PHP 1:在Windows上安装和配置PHP,Apache和My SQL PHP 2:从一个实例介绍学习方法 PHP 3:从Login界面谈PHP标记 PHP 4:从Login进一步看到的 PHP 5:PHP语法导向 PHP 6:PHP 基本数据类型 PHP 7: PHP 变量和

在AndroidManifest.xml文件中设置Android程序的启动界面方法

  比如Android的Login程序和Android的Helloworld程序,但是却总不能正确运行一个正确的程序,郁闷了很久,终于在一次一次的测试后成功的在Android模拟器中运行了自建项目的程序.总结程序启动界面的设置经验如下: 在 MyEclipse建立的Android项目中,找到AndroidManifest.xml文件,双击打开. 设置程序运行后首先启动Login界面的AndroidManifest.xml文件代码如下: <?xml version="1.0" en

j2me与j2se(j2ee)结合开发

问题描述 设想建立一个C/S系统,要求如下:Client-j2me程序,安装于手机.Server-j2se程序,安装于PC服务器.需求:1.通过手机Login界面向Server发送用户名及密码.2.Server访问DB校验用户信息3.校验结束,反馈给手机校验消息.(成功/失败)4.校验成功后,从DB读取数据,下载到Client.问题:1.Client与Server的通信是使用SocketConnection还是HttpConnection?(或在何种情况下哪个更合适?)2.以上功能能否实现?备注

WML——XML标记语言开发实例详细解析

xml     本文主要介绍WML的相关知识,如何开发WAP应用程序.    WML是一种基于XML的标记语言,她的官方说明和规范是由WAP论坛维护的.WML的文档类型定义是xml文件类型的,http://www.wapforum.org/DTD/wml_1.1.xml.     和HTML语言一样,WML是为了显示数据的,而XML的目的则是描述数据,我们定义了一系列的标记并组织成为语法规范把它称为DTD(Document Type Definition).支持WAP的手机里面都安装了WAP浏览

JSP中自定义标记符的使用

js 摘要 在JSP中有一种机制,可以让你在JSP页面中插入与HTML类似的标记.本文介绍JSP定制标记的基本概念和构成,以及如何开发和应用JSP定制标记.  关键字JSP,XML,TLD,标记符 什么是标记使用HTML语言我们可以这样去编辑我们的网页:    <HTML> <HEAD> <TITLE>  HELLO  WORLD </TITLE>         </HEAD>         <BODY> HELLO WORLD

登录文件,文件名login.asp

文件名 登录文件,文件名login.asp <HTML><HEAD><style type="text/css"><!--td {  font-size: 9pt; font-family: "宋体";line-height:10pt}.td1 {  font-size: 9pt; font-family: "宋体";line-height:15pt}input {font-family: 宋体;font

php过滤html标记属性类用法实例

 具体方法如下: HtmlAttributeFilter.class.php类文件如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 7

JavaWeb 后端 &lt;十二&gt; 之 过滤器 filter 乱码、不缓存、脏话、标记、自动登录、全站压缩过滤器

一.过滤器是什么?有什么? 1.过滤器属于Servlet规范,从2.3版本就开始有了. 2.过滤器就是对访问的内容进行筛选(拦截).利用过滤器对请求和响应进行过滤 二.编写步骤和执行过程 1.编码步骤: a.编写一个类:实现javax.servlet.Filter接口 public class FilterDemo1 implements Filter {           public FilterDemo1(){         System.out.println("调用了默认的构造方法