PHP用函数嵌入网站访问量计数器


Posted in PHP onOctober 27, 2017

这是一种方法实现计数器。想看另一种方法的请点击:【PHP】简单的网站访问量计数器实现

想看具体代码思路的也请点击上面的链接。

创建Embed-Count文件夹

在Embed-Count文件夹下面创建counter.inc.php文件,内容如下:

<?php
function counter(){
  $counter = 0;               //初始化变量
  $max_len = 8;
  $lj = explode("/",$_SERVER["PHP_SELF"]); 

  //超全局变量$_SERVER['PHP_SELF']保存了当前运行脚本的名字 Embed_Count/al_Embed_Fn.php

  $CounterFile="./counter/".$lj[count ($lj)-1].".dat";
  if(!file_exists($CounterFile)){
    if(!file_exists(dirname($CounterFile))){
      mkdir(dirname($CounterFile),0777);
    }
    $cf = fopen($CounterFile,'w');
    fputs($cf,'0');
    fclose($cf);
  }
  else{
    $cf = fopen($CounterFile,'r');
    $counter = trim(fgets($cf,$max_len));
    fclose($cf);
  }
  $counter++;
  $cf = fopen($CounterFile,'w');
  fputs($cf,$counter);
  fclose($cf);
  echo $counter;
}



?>

在Embed-Count文件夹下面创建al_Embed_Fn.php文件,内容如下:

<?php
  include "counter.inc.php";
?>
<html>
<head>
  <meta charset="UTF-8">
  <title>嵌入式网页计数器-刘佳晨</title>
</head>
<body>
  <div id="dd">
    <span>欢迎您!</span>
    <span>您是本网站的第<?php counter(); ?>位访客</span>
  </div>
</body>
</html>

好了,键入完成之后,是不是发现就只是把代码封装成一个函数而已?

没错,但是这次又用了很多新的函数和小技巧。让我给你一 一道来。

小技巧

1.多数php程序员习惯于吧include或require 的文件扩展名命名为“inc”;

2.$CounterFile="./counter/".$lj[count ($lj)-1].".dat";把计数器文件定位于当前脚本所在文件夹下的子文件夹counter里面,文件以当前脚本名称加“dat”为名,即al_Embed_Fn.php.dat

3.<?php include "counter.inc.php" ?>把计数器函数嵌入到网页中,该段脚本应该放在<HTML>标记之前;counter.inc.php保存在与网页相同的文件夹下,否则在include 中要指明文件的存放路径

4.<?php counter(); ?>调用counter() 函数,该函数返回计数器的值
好了,这个函数调用的嵌入式也做好了。

这里有几个函数需要说一下。

    mkdir(dirname($CounterFile),0777):建立以$CounterFlile的值为名的目录,即./counter,目录的访问权限是最高权限(可读可写可执行);

    dirname($CounterFile):返回路径中的目录部分

    explode('/',$_SERVER[PHP_SELF]):返回一个字符串数组,每个元素为$_SERVER[PHP_SELF]经“/”作为边界切割出的子字符串

    count($lj):统计数组&lj中元素的个数

期待我的下一个版本吗?

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php循环创建目录示例分享(php创建多级目录)
Mar 04 PHP
PHP延迟静态绑定示例分享
Jun 22 PHP
PHP常用的排序和查找算法
Aug 06 PHP
PHP生成各种常见验证码和Ajax验证过程
Jan 10 PHP
Linux(CentOS)下PHP扩展PDO编译安装的方法
Apr 07 PHP
php下载文件超时时间的设置方法
Oct 06 PHP
php 自定义错误日志实例详解
Nov 12 PHP
Yii框架实现记录日志到自定义文件的方法
May 23 PHP
Laravel 5.4重新登录实现跳转到登录前页面的原理和方法
Jul 13 PHP
ThinkPHP 在阿里云上的nginx.config配置实例详解
Oct 11 PHP
PHP封装的验证码工具类定义与用法示例
Aug 22 PHP
利用PHP计算有多少小于当前数字的数字方法示例
Aug 26 PHP
PHP实现网站访问量计数器
Oct 27 #PHP
在 Laravel 中 “规范” 的开发短信验证码发送功能
Oct 26 #PHP
详解php 使用Callable Closure强制指定回调类型
Oct 26 #PHP
php静态成员方法和静态的成员属性的使用方法
Oct 26 #PHP
PHP中类型转换 ,常量,系统常量,魔术常量的详解
Oct 26 #PHP
利用php获得flv视频长度的实例代码
Oct 26 #PHP
PHP 中魔术常量的实例详解
Oct 26 #PHP
You might like
php生成0~1随机小数的方法(必看)
2017/04/05 PHP
浅谈laravel框架与thinkPHP框架的区别
2019/10/23 PHP
语义化 H1 标签
2008/01/14 Javascript
DIV外区域Click后关闭DIV的实现代码
2011/12/21 Javascript
javascript在子页面中函数无法调试问题解决方法
2014/01/17 Javascript
被遗忘的javascript的slice() 方法
2015/04/20 Javascript
Javascript实现div层渐隐效果的方法
2015/05/30 Javascript
jQuery实现带水平滑杆的焦点图动画插件
2016/03/08 Javascript
js 动态生成json对象、时时更新json对象的方法
2016/12/02 Javascript
Node.js中的http请求客户端示例(request client)
2017/05/04 Javascript
JavaScript正则表达式校验与递归函数实际应用实例解析
2017/08/04 Javascript
vue-router项目实战总结篇
2018/02/11 Javascript
java和js实现的洗牌小程序
2019/09/30 Javascript
Vue extend的基本用法(实例详解)
2019/12/09 Javascript
Vue的transition-group与Virtual Dom Diff算法的使用
2019/12/09 Javascript
js实现自动播放匀速轮播图
2020/02/06 Javascript
简单讲解Python中的数字类型及基本的数学计算
2016/03/11 Python
Python正则替换字符串函数re.sub用法示例
2017/01/19 Python
python numpy 一维数组转变为多维数组的实例
2018/07/02 Python
利用django+wechat-python-sdk 创建微信服务器接入的方法
2019/02/20 Python
Python读写文件模式和文件对象方法实例详解
2019/09/17 Python
Python OpenCV视频截取并保存实现代码
2019/11/30 Python
微软开源最强Python自动化神器Playwright(不用写一行代码)
2021/01/05 Python
python爬虫线程池案例详解(梨视频短视频爬取)
2021/02/20 Python
推荐一些比较有用的css3新属性
2014/11/11 HTML / CSS
英国排名第一的在线宠物用品商店:Monster Pet Supplies
2018/05/20 全球购物
新东方旗下远程教育网站:新东方在线
2020/03/19 全球购物
岗位职责的含义
2013/11/17 职场文书
兰兰过桥教学反思
2014/02/08 职场文书
2014年五四青年节演讲稿范文
2014/04/22 职场文书
兴趣班停课通知
2015/04/24 职场文书
Redis命令处理过程源码解析
2022/02/12 Redis
【js设计模式】SOLID五大设计原则
2022/03/24 Javascript
PC版《死亡搁浅导剪版》现已发售 展开全新的探险
2022/04/03 其他游戏
Python简易开发之制作计算器
2022/04/28 Python
分享几个实用的CSS代码块
2022/06/10 HTML / CSS