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 相关文章推荐
桌面中心(三)修改数据库
Oct 09 PHP
PHP句法规则详解 入门学习
Nov 09 PHP
有关phpmailer的详细介绍及使用方法
Jan 28 PHP
2014过年倒计时示例
Jan 31 PHP
phpmailer发送邮件之后,返回收件人是否阅读了邮件的方法
Jul 19 PHP
PHP基于数组实现的分页函数实例
Aug 20 PHP
Laravel 5框架学习之Laravel入门和新建项目
Apr 07 PHP
thinkphp实现163、QQ邮箱收发邮件的方法
Dec 18 PHP
PHP程序中使用adodb连接不同数据库的代码实例
Dec 19 PHP
PHP简单装饰器模式实现与用法示例
Jun 22 PHP
Laravel Intervention/image图片处理扩展包的安装、使用与可能遇到的坑详解
Nov 14 PHP
PHP实现的操作数组类库定义与用法示例
May 24 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.MVC的模板标签系统(三)
2006/09/05 PHP
Mysql的常用命令
2006/10/09 PHP
php str_pad() 将字符串填充成指定长度的字符串
2010/02/23 PHP
php设计模式 Interpreter(解释器模式)
2011/06/26 PHP
PHP中全面阻止SQL注入式攻击分析小结
2012/01/30 PHP
php导出csv格式数据并将数字转换成文本的思路以及代码分享
2014/06/05 PHP
php实现约瑟夫问题的方法小结
2015/03/23 PHP
Javascript 入门基础学习
2010/03/10 Javascript
JSON JQUERY模板实现说明
2010/07/03 Javascript
jQuery表格插件ParamQuery简单使用方法示例
2013/12/05 Javascript
Javascript中3种实现继承的方法和代码实例
2014/08/12 Javascript
javascript实现粘贴qq截图功能(clipboardData)
2016/05/29 Javascript
jQuery插件FusionCharts绘制的2D双面积图效果示例【附demo源码】
2017/04/11 jQuery
vue+iview 实现可编辑表格的示例代码
2018/10/31 Javascript
Vue 框架之动态绑定 css 样式实例分析
2018/11/14 Javascript
Vue.js实现立体计算器
2020/02/22 Javascript
[51:32]Optic vs Serenity 2018国际邀请赛淘汰赛BO3 第一场 8.22
2018/08/23 DOTA
python构造icmp echo请求和实现网络探测器功能代码分享
2014/01/10 Python
Python爬虫实例_城市公交网络站点数据的爬取方法
2018/01/10 Python
python获取命令行输入参数列表的实例代码
2018/06/23 Python
Django时区详解
2019/07/24 Python
python 3.74 运行import numpy as np 报错lib\site-packages\numpy\__init__.py
2019/10/06 Python
python中yield的用法详解
2021/01/13 Python
python 写一个水果忍者游戏
2021/01/13 Python
Python实现粒子群算法的示例
2021/02/14 Python
详解CSS3中使用gradient实现渐变效果的方法
2015/08/18 HTML / CSS
中国海淘族值得信赖的海淘返利网站:55海淘
2017/01/16 全球购物
校班主任推荐信范文
2013/12/03 职场文书
《蚂蚁和蝈蝈》教学反思
2014/02/24 职场文书
高中教师考核方案
2014/05/18 职场文书
银行金融服务方案
2014/06/11 职场文书
党的群众路线个人对照检查材料
2014/09/23 职场文书
通知的格式范文
2015/04/27 职场文书
七一活动主持词
2015/06/29 职场文书
小学入学感言
2015/08/01 职场文书
GO语言异常处理分析 err接口及defer延迟
2022/04/14 Golang