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脚本的10个技巧(4)
Oct 09 PHP
php MsSql server时遇到的中文编码问题
Jun 11 PHP
PHP多线程类及用法实例
Dec 03 PHP
php中JSON的使用方法
Apr 30 PHP
php源码分析之DZX1.5加密解密函数authcode用法
Jun 17 PHP
分享10段PHP常用代码
Nov 11 PHP
PHP读取PPT文件的方法
Dec 10 PHP
php一个文件搞定微信jssdk配置
Dec 12 PHP
PHP CodeIgniter分页实例及多条件查询解决方案(推荐)
May 20 PHP
PhpStorm本地断点调试的方法步骤
May 21 PHP
Yii框架连表查询操作示例
Sep 06 PHP
laravel实现于语言包的完美切换方法
Sep 29 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+mysqli实现将数据库中一张表信息打印到表格里的方法
2015/01/28 PHP
php将金额数字转化为中文大写
2015/07/09 PHP
[HTML/CSS/Javascript]WWTJS
2007/09/25 Javascript
基于jquery的blockui插件显示弹出层
2011/04/14 Javascript
JS编程小常识很有用
2012/11/26 Javascript
jQuery中toggle()函数的使用实例
2015/04/17 Javascript
Node.js项目中调用JavaScript的EJS模板库的方法
2016/03/11 Javascript
JS中如何实现复选框全选功能
2016/12/19 Javascript
js实现点击按钮弹出上传文件的窗口
2016/12/23 Javascript
Web 开发中Ajax的Session 超时处理方法
2017/01/19 Javascript
AngularJS折叠菜单实现方法示例
2017/05/18 Javascript
VueJS组件之间通过props交互及验证的方式
2017/09/04 Javascript
如何去除vue项目中的#及其ie9兼容性
2018/01/11 Javascript
vue 页面加载进度条组件实例
2018/02/05 Javascript
深入浅析Vue中的 computed 和 watch
2018/06/06 Javascript
浅谈Vue.js组件(二)
2019/04/09 Javascript
[01:22:28]DOTA2-DPC中国联赛 正赛 SAG vs RNG BO3 第一场 1月18日
2021/03/11 DOTA
pandas 读取各种格式文件的方法
2018/06/22 Python
python 用opencv调用训练好的模型进行识别的方法
2018/12/07 Python
使用Keras中的ImageDataGenerator进行批次读图方式
2020/06/17 Python
解决TensorFlow程序无限制占用GPU的方法
2020/06/30 Python
基于Python正确读取资源文件
2020/09/14 Python
OpenCV利用python来实现图像的直方图均衡化
2020/10/21 Python
新加坡最佳婴儿用品店:Mamahood.com.sg
2018/08/26 全球购物
营销专业应届生求职信
2013/11/26 职场文书
优秀的毕业生的自我评价
2013/12/12 职场文书
化学实验员岗位职责
2013/12/28 职场文书
测控技术与通信工程毕业生自荐信范文
2013/12/28 职场文书
2014年五四青年节活动策划书
2014/04/22 职场文书
铁路安全事故反思
2014/04/26 职场文书
单位作风建设剖析材料
2014/10/11 职场文书
病人家属写给医院的感谢信
2015/01/23 职场文书
辩论赛开场白大全(主持人+辩手)
2015/05/29 职场文书
开学第一周总结
2015/07/16 职场文书
python实现A*寻路算法
2021/06/13 Python
MySQL sql模式设置引起的问题
2022/05/15 MySQL