一个用php编写的简单计数器,php编写简单计数器

php具有极其强大的图像处理能力,用它可以很轻易的动态生成web图像。

一下是一个使用php做成的一个简单计数器。

1. 总体思路:

把以往的访问人数记录在一个文本文件中,当网页被访问的时候,从打开该文件

并从中读出以往的访问人数,加 1,得到最新的访问人数,并把该数目格式化成

标准的格式,再调用图像处理函数,把该数字输出成图片,再把新的访问数字回

写到纪录访问人数的文件中。

2. 程序所用到的函数说明:

A. 相关的文件操作:

a. 打开文件:

函数的原型:int fopen(string filename, string mode);

返回结果:如果打开文件成功,函数返回文件流指针,否则返回 FALSE(0)。

参数说明:

string filename — 要打开的文件名,必须为字符串形式。

例如, “zzm.txt”、”..zzm.txt”等。

string mode — 打开文件的方式,必须为字符形式。

‘r’,只读形式,文件指针指向文件的开头

‘r+’,可读可写,文件指针指向文件的开头

‘w’,只写形式,文件指针指向文件的开头,把文件长度截成0,

如果文件不存在,将尝试建立文件。

‘w+’,可读可写,文件指针指向文件的开头,把文件长度截成0,

如果文件不存在,将尝试建立文件。

‘a’,追加形式(只可写入),文件指针指向文件的最后,如果文

件不存在,将尝试建立文件。

‘a+’,可读可写,文件指针指向文件的最后,如果文件不存在,

将尝试建立文件。

例子:用只读形式打开当前目录下面的”zzm.txt”

$fp = fopen(“zzm.txt”, “r”);

b. 关闭文件:

函数原型:int fclose(int fp);

返回结果:成功返回1,失败返回0

参数说明:int fp是 fopen函数返回的文件流指针。

例子:关闭干刚才用fopen打开的zzm.txt文件

fclose($fp);

c. 读文件:

函数原型:string fgets(int fp, int length);

返回结果:返回 length -1 长度的字符串,如果到文件结尾,返回 EOF(End Of File)

参数说明:

int fp — 要读入数据的文件流指针,由fopen函数返回的数值

int length — 读入的字符个数,实际读入字符个数为 length -1 个

例子:从 $fp 中读取9个字符

$str1 = fgets($fp,10);

d. 写文件:

函数原型:int fputs(int fp, string str, int [length]);

返回结果:和fclose同

参数说明:

int fp — 要写入信息的文件流指针,由fopen函数返回的数值

string str — 要写入文件的字符串。

int length — 写入的长度,可选的,如果不提供length,则整个串将被写入,

否则,写入length长度个字符。

例子:向 $fp 写入 “0000000001”

fput($fp, “0000000001”);

B. 相关的字符串函数:

a. 计算字符串长度:

函数原型:int strlen(string str);

返回结果:返回字符串的长度

参数说明:

string str — 要计算长度的字符串

例子:计算 “000000000” 的字符串长度

$str2 = “000000000”;

$len2 = strlen($str);

b. 字符串相加:最简单不过了,用一个 . 把两个字符串连接起来。

例子:把 $str1和$str2相加

$str = $str1.$str2

C. 相关的图形函数:

a. 新建图像:

函数原型:int imagecreate(int x_size, int y_size);

返回结果:返回一个 X*Y 像素大小的空图像识别号(ImageID)

参数说明:x_size,y_size分别是新建图像的宽度和高度(以像素为单位)

例子:新建一个 88*31 像素大小的空图片

$ImageID = imagecreate(88, 31);

b. 给图像分配一种颜色:

函数原型:int imagecolorallocate(int im, int red, int green, int blue);

返回结果:给图像($im)返回一个RGB颜色识别号

参数说明:int im 图像识别号

int red、green、blue分别是红绿蓝三种颜色的分量,取值范围 0 – 255

例子:给图像$im 分配一个识别号为$white白色颜色,白色的RGB为(255,255,255)

$white = imagecolorallocate($im, 255, 255, 255);

c. 给图像填充颜色:

函数原型:int imagefill(int im, int x, int y, int col);

返回结果:成功返回1,否则返回0

参数说明:int im,图像的识别号

int x, int y,从图像的(x,y)坐标开始填充颜色

(0,0)表示图像的左上角

int col,颜色的识别号

例子:从图像的左上角开始(即整个图片)填入黑色(已经用imagecolorallocate函数

定义了黑色的颜色识别号为$black了)。

imagefill($im, 0, 0, $black);

d. 计算图像的宽度:

函数原型:int imagesx(int im);

返回结果:返回图像的宽度(单位为像素)

参数说明:int im,图像的识别号。

例子:计算图像$im的宽度

$px = imagesx($im);

php写一个加减乘除的简单计算器,写到一半不会了

照你的修改了下:

function showu3(num1,num2,num3)

{

document.getElementById(‘u1’).value = num1;

document.getElementById(‘u2’).value = num2;

document.getElementById(‘u3’).value = num3;

}

if (!empty($_GET[“fuhao”]))

{

$fuhao = $_GET[“fuhao”];

$u1 = $_GET[“u1”];

$u2 = $_GET[“u2”];

$u3 = $_GET[“u3”];

switch ($fuhao)

{

case “+”:

$u3 = $u1 + $u2;

break;

/* 减乘除什么的自己写吧

case “-“

*/

}

?>

showu3();

}

?>

数字1

php创建一个文本计数器,一个用php编写的简单计数器,php编写简单计数器_PHP教程...相关推荐

  1. php 二维数组字段合并,PHP将二维数组某一个字段相同的数组合并起来的方法,二维数组数组_PHP教程...

    PHP将二维数组某一个字段相同的数组合并起来的方法,二维数组数组 本文实例讲述了PHP将二维数组某一个字段相同的数组合并起来的方法.分享给大家供大家参考,具体如下: 例子: array(3) { [0 ...

  2. php在类定义一个我静态变量,php中静态类与静态变量用法的区别分析_PHP教程

    php中静态类与静态变量用法的区别分析 static是定义一个静态对象或静态变量,关于static 定义的变量或类方法有什么特性我们看完本文章的相关实例后就见分晓了. 1. 创建对象$object = ...

  3. php文本框显示ip,php实现图形显示Ip地址的代码及注释_PHP教程

    使用图形显示Ip,文件 sunip.php 代码如下: 1. 2. header("Content-type: image/gif"); 第二行 声明浏览器标头 输出为GIF图形 ...

  4. 【小白学习PyTorch教程】十五、BERT:通过PyTorch来创建一个文本分类的Bert模型

    @Author:Runsen 2018 年,谷歌发表了一篇题为<Pre-training of deep bidirectional Transformers for Language Unde ...

  5. Java图形window界面创建一个文本框和一个按钮awt容器

    package com.java;import java.awt.*;public class HelloWorld {public static void main(String[] args) { ...

  6. 十二步创建你的第一个JavaScript库

    是否曾对Mootools的魔力感到惊奇?是否有想知道Dojo如何做到那样的?是否对jQuery感到好奇?在这个教程中,我们将了解它们背后的东西并且动手创建一个超级简单的你最喜欢的库. 我们其乎每天都在 ...

  7. javascript 获取光标所选中的内容并插入到另一个文本框中(兼容ie和ff)

    项目中正好用到 做下笔记方便以后查找 ie获取光标的位置使用document.selection.createRange() 火狐下使用document.getElementById(id).sele ...

  8. python程序弹出输入框_尝试使Kivy按钮弹出一个文本框

    类似/相关的链接帮助不大: 我已经做了好几个小时了,我发现了一些和我类似的问题,但实际上什么都没有起作用. 我要做的是:创建一个按钮,当按下按钮时,会弹出一个文本输入框,然后在一个短字符串后显示您在按 ...

  9. Sencha学习笔记4: Creating your First App - 官方创建您的第一个Sencha Touch应用指导

    英文原文地址:http://docs.sencha.com/touch/2.3.1/#!/guide/first_app (天地会珠海分舵声明:本翻译文章建议读者参照英文原文进行阅读,因为原文包含了实 ...

  10. java中的相对路径和绝对路径,获取一个文本上每个字符出现的次数

    相对路径:本文件同级下的文件,直接写文件名字,就是相对路径例如zzz.txt:,同级目录里有zzz.txt,直接写zzz.txt就是相对路径 绝对路径:文件在硬盘中真正存放的位置,例如 D:\Java ...

最新文章

  1. (NO.00002)iOS游戏精灵战争雏形(六)
  2. matlab 查看函数属性,matlab – 使用FFT属性查找2D函数的导数
  3. java nio 强制关闭_netty 处理远程主机强制关闭一个连接
  4. POJ 3687 Labeling Balls
  5. C++(14)--面向对象
  6. Simulink_Debug的使用
  7. PHP+trim乱码,PHP 源码探秘 - 为什么 trim 会导致乱码
  8. 高性能 Go 日志库 zap 设计与实现
  9. Linu的sftp环境搭建
  10. 计算机基础与c语言试题及答案,2017年9月计算机二级C语言基础试题及答案
  11. 安装恩智浦IDE与配置SDK和烧录程序
  12. 物联网工程-监控箱、配电箱内接线、出线及布线安装规范设计
  13. gtj2018如何生成工程量报表_工程量清单计价规范2018
  14. ArcGIS 把字段允许空值设为否
  15. 一个矩阵类,很好用,分享给大家
  16. 论文阅读: Spatial transformer networks
  17. C++ - 求一个正整数的二进制表示中1的个数
  18. Jmeter的使用(一)
  19. 迟到的年终总结,2012-2014
  20. excel导入mysql数据库方法(最新,2016年2月19日)

热门文章

  1. 朱晔的互联网架构实践心得S1E4:简单好用的监控六兄弟
  2. Modbus协议中文pdf免费下载地址
  3. 机器人学编程简介~2019~
  4. Alpha 完结撒花 —— 事后诸葛亮
  5. 50个程序员的网站!建议收藏
  6. Excel 输入内容自动生成条形码
  7. 给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的数字可以无限制重复被
  8. ug12无法连接服务器系统,NX许可证错误:无法连接至许可证服务器系统。SPLM_LICENSE_SERVER错误[-15]...
  9. 《彼得林奇的成功投资》读书笔记
  10. android备份apk,无需手机助手,ABI帮你安装/备份安卓APK