欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP 3:从Login界面谈PHP标记

程序员文章站 2022-06-10 23:49:10
...
前一篇文章简要介绍了此实例。
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 解析一个文件时,会寻找开始和结束标记,这里,开始标记是 ,如果你使用过ASP.NET,肯定还记得 ,它们的作用有点类似。这些标记告诉 PHP 开始和停止解释这些标记内包含的代码。使用了这些标记,PHP就会忽略它们之外的内容。这样它们可以嵌入到各种文档中,当然最常见的就是嵌入HTML页面里。
上面介绍的是最常见的HTML分离,那么有没有更高级的呢?当然有。例子如下:

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

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

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

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

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

1
2 echo " 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
2

一般来说,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()显示页尾的。
至于它们怎么定义,在一篇文章里描述。