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中文本数据翻页(留言本翻页)
Oct 09 PHP
复杂检索数据并分页显示的处理方法
Oct 09 PHP
PHP通用分页类page.php[仿google分页]
Aug 31 PHP
php中通过curl模拟登陆discuz论坛的实现代码
Feb 16 PHP
探讨:如何编写PHP扩展
Jun 13 PHP
探讨Smarty中如何获取数组的长度以及smarty调用php函数的详解
Jun 20 PHP
ThinkPHP3.1新特性之动态设置自动完成和自动验证示例
Jun 19 PHP
php中socket的用法详解
Oct 24 PHP
PHP 实现类似js中alert() 提示框
Mar 18 PHP
PHP魔术方法使用方法汇总
Feb 14 PHP
PHP实现创建微信自定义菜单的方法示例
Jul 14 PHP
实例讲解PHP表单
Jun 10 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的特殊设置
2006/10/09 PHP
php简单的留言板与回复功能具体实现
2014/02/19 PHP
IE和Firefox下javascript的兼容写法小结
2008/12/10 Javascript
js下将字符串当函数执行的方法
2011/07/13 Javascript
图标线性回归斜着移动到指定的位置
2013/08/16 Javascript
jquery绑定事件不生效的解决方法
2014/02/11 Javascript
JQuery包裹DOM节点的方法
2015/06/11 Javascript
javascript控制图片播放的实现代码
2020/07/29 Javascript
基于jQuery实现的仿百度首页滑动选项卡效果代码
2015/11/16 Javascript
JS操作XML实例总结(加载与解析XML文件、字符串)
2015/12/08 Javascript
Vue2学习笔记之请求数据交互vue-resource
2017/02/23 Javascript
JS 判断某变量是否为某数组中的一个值的3种方法(总结)
2017/07/10 Javascript
关于jquery form表单序列化的注意事项详解
2017/08/01 jQuery
Vuex 快速入门(简单易懂)
2018/09/20 Javascript
Node.js path模块,获取文件后缀名操作
2020/11/07 Javascript
如何准确判断请求是搜索引擎爬虫(蜘蛛)发出的请求
2015/10/13 Python
Python实现二叉堆
2016/02/03 Python
Python数据库的连接实现方法与注意事项
2016/02/27 Python
python学生管理系统开发
2019/01/30 Python
Python实现FTP文件传输的实例
2019/07/07 Python
详解python pandas 分组统计的方法
2019/07/30 Python
Python 仅获取响应头, 不获取实体的实例
2019/08/21 Python
python unichr函数知识点总结
2020/12/16 Python
CSS3绘制圆角矩形的简单示例
2015/09/28 HTML / CSS
基于canvas使用贝塞尔曲线平滑拟合折线段的方法
2018/01/10 HTML / CSS
焊接专业毕业生求职信
2013/10/01 职场文书
大学生入党思想汇报
2014/01/01 职场文书
机械设计及其自动化求职推荐信
2014/02/17 职场文书
巾帼志愿者活动方案
2014/08/17 职场文书
安全演讲稿开场白
2014/08/25 职场文书
2014年数学教研组工作总结
2014/12/06 职场文书
亲属关系公证书样本
2015/01/23 职场文书
幼儿园个人师德总结
2015/02/06 职场文书
公司行政助理岗位职责
2015/04/11 职场文书
原告离婚代理词
2015/05/23 职场文书
go语言中切片与内存复制 memcpy 的实现操作
2021/04/27 Golang