0

0

实用的php脚本编写

怪我咯

怪我咯

发布时间:2017-06-19 10:12:17

|

5600人浏览过

|

来源于php中文网

原创

现在来编写一些更实用的脚本,比如检查浏览页面的访问者在用什么浏览器。要达到这个目的,需要检查用户的 agent 字符串,它是浏览器发送的 http 请求的一部分。该信息被存储在一个变量中。在 php 中,变量总是以一个美元符开头。我们现在感兴趣的变量是 $_server['http_user_agent'] 。

PS:$_SERVER 是一个特殊的 PHP 保留变量,它包含了 web 服务器提供的所有信息,被称为超全局变量。请查阅本手册“超全局变量”中的有关内容以获取更多信息。这些特殊的变量是在 PHP » 4.1.0 版本引入的。在这之前使用 $HTTP_*_VARS 数组,如 $HTTP_SERVER_VARS 。尽管现在已经不用了,但它们在新版本中仍然存在(参见“旧代码”一节中的注解)。

要显示该变量,只需简单地进行如下操作:

Example #1 打印一个变量(数组元素)

该脚本的输出可能是:

立即学习PHP免费学习笔记(深入)”;

Kimi智能助手
Kimi智能助手

超强AI写作助手,一键总结20w字长文,支持批量文档上传,多端同步内容不怕丢失。论文综述、文档速读、脚本小说创作,统统交给Kimi!实时联网搜索,给你最智能清晰的解答。

下载
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)

PHP 有很多种不同类型的变量。在以上例子中我们打印了一个数组的单元。数组是一类非常有用的变量。

$_SERVER 只是 PHP 自动全局化的变量之一。可以查阅“预定义变量”一节来查看这些变量的列表,或者也可以通过上节例子中 phpinfo() 函数的输出来查看。

可以在一个 PHP 标识中加入多个 PHP 语句,也可以建立一个代码块来做比简单的 echo 更多的事情。例如,如果需要识别 Internet Explorer,可以进行如下操作:

Example #2 流程控制与函数的使用

' ;
}
?>

该脚本的输出可能是:

立即学习PHP免费学习笔记(深入)”;

正在使用 Internet Explorer。

这里要介绍一些新的原理。上面用了一个 if 语句。如果用户对 C 语言的基本语法比较熟悉,则应该对此很熟悉,否则,可能需要拿起任何一本 PHP 介绍性的书籍并阅读前面的两三个章节,或者也可以阅读本手册的“语言参考”一章。

需要介绍的第二个原理,是对 strpos() 函数的调用。 strpos() 是 PHP 的一个内置函数,其功能是在一个字符串中搜索另外一个字符串。例如我们现在需要在 $_SERVER['HTTP_USER_AGENT'] (即所谓的 haystack)变量中寻找 'MSIE'。如果在这个 haystack 中该字符串(即所谓的 needle)被找到(“草里寻针”),则函数返回 needle 在 haystack 中相对于开头的位置;如果没有,则返回 FALSE 。如果该函数没有返回 FALSE ,则 if 会将条件判断为 TRUE 并运行其花括号 {} 内的代码;否则,则不运行这些代码。可以自己尝试利用 if,else 以及其它的函数如 strtoupper() 和 strlen() 来建立类似的脚本。在本手册中相关的页面也包含有范例。如果对如何使用函数不是很确定,可以阅读手册中有关“如何阅读函数的定义”和“函数”的有关章节。

以下我们进一步显示如何进出 PHP 模式,甚至是在一个 PHP 代码块的中间:

Example #3 混和 HTML 和 PHP 模式


strpos() 肯定没有返回假 (FALSE)

正在使用 Internet Explorer

strpos() 肯定返回假 (FALSE)

没有使用 Internet Explorer

该脚本的输出可能是:

立即学习PHP免费学习笔记(深入)”;

strpos() 肯定没有返回假 (FALSE)

正在使用 Internet Explorer

和以上我们用一个 PHP 的 echo 语句来输出不同的是,我们跳出了 PHP 模式来直接写 HTML 代码。这里很值得注意的一点是,对于这两种情况而言,脚本的逻辑效率是相同的。在判断了 strpos() 函数的返回值是 TRUE 或是 FALSE ,也就是判断了字符串 'MSIE' 是否被找到之后,最终只有一个 HTML 块被发送给浏览者。

相关文章

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

php

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
php与html混编教程大全
php与html混编教程大全

本专题整合了php和html混编相关教程,阅读专题下面的文章了解更多详细内容。

6

2026.01.13

PHP 高性能
PHP 高性能

本专题整合了PHP高性能相关教程大全,阅读专题下面的文章了解更多详细内容。

6

2026.01.13

MySQL数据库报错常见问题及解决方法大全
MySQL数据库报错常见问题及解决方法大全

本专题整合了MySQL数据库报错常见问题及解决方法,阅读专题下面的文章了解更多详细内容。

6

2026.01.13

PHP 文件上传
PHP 文件上传

本专题整合了PHP实现文件上传相关教程,阅读专题下面的文章了解更多详细内容。

5

2026.01.13

PHP缓存策略教程大全
PHP缓存策略教程大全

本专题整合了PHP缓存相关教程,阅读专题下面的文章了解更多详细内容。

3

2026.01.13

jQuery 正则表达式相关教程
jQuery 正则表达式相关教程

本专题整合了jQuery正则表达式相关教程大全,阅读专题下面的文章了解更多详细内容。

1

2026.01.13

交互式图表和动态图表教程汇总
交互式图表和动态图表教程汇总

本专题整合了交互式图表和动态图表的相关内容,阅读专题下面的文章了解更多详细内容。

15

2026.01.13

nginx配置文件详细教程
nginx配置文件详细教程

本专题整合了nginx配置文件相关教程详细汇总,阅读专题下面的文章了解更多详细内容。

4

2026.01.13

nginx部署php项目教程汇总
nginx部署php项目教程汇总

本专题整合了nginx部署php项目教程汇总,阅读专题下面的文章了解更多详细内容。

5

2026.01.13

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PHP课程
PHP课程

共137课时 | 8.6万人学习

JavaScript ES5基础线上课程教学
JavaScript ES5基础线上课程教学

共6课时 | 6.9万人学习

PHP新手语法线上课程教学
PHP新手语法线上课程教学

共13课时 | 0.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号