Entries Tagged ‘PHP’:

手机短信天气预报自动发送程序

今天闲来无聊想起网上流传已久的飞信API接口,加上MM说想要手机天气预报,平时又没空拿她手机安装软件,所以就有了写个手机短信天气预报程序的想法。
程序大致分成两个模块,(一)PHP程序采集中国气象网站的数据用正则表达式进行提取关键信息,这个以前的文章已经写过不再重复叙述。然后利用飞信的API接口向MM的手机发送天气预报数据。
(二)写一个shell脚本,实现访问PHP程序。考虑到网络偶尔出现故障,加入了sleep和while循环。
最后在crontab里面添加每天定时执行shell脚本即可。
部分关键代码如下:

Tags: ,

Comments (10)

php配置session相关知识

php session有一个GC功能,就是Garbage Collector。这个GC启动的时候,会清除那些已经“超时”的session。它的工作原理:
1.用户访问并登陆网站,这时候后台会调用session_start来尝试生成一个会话(如果已经有会话,则相当于一次有效会话请求)
2.对于这样的每一次有效会话请求(Request),apache的php模块会根据session相关的全局变量gc_probability/gc_divisor =>计算出启动GC的概率,并由此概率来决定在这次请求中是否应该启动GC。举例来说,

Tags:

Comments (2)

揭示PHP成功背后的秘密:PHP创始人访谈录

本文来源:51CTO
Rasmus Lerdorf可能是格陵兰最著名的电脑牛人,他1995年创建了PHP脚本语言,并成功应用到他的网站中,在他的一手栽培下,PHP已变成一个强大的,完全成熟的语言,目前世界各地已有数百万PHP应用案例。
 
PHP创始人Rasmus Lerdorf
Linux Format杂志对Rasmus Lerdorf做了一次专访,为我们揭开Rasmus Lerdorf现在在PHP社区的地位,以及早期他是如何决策的,才让PHP实现了今天的巨大成功。

Tags:

Leave a Comment

PHPCMS开发文档里看到PHP编码规范

无意间发现这篇文章觉得比较有用,原作者不明。
注:这是从PHPCMS开发文档里看到编码规范,虽名为PHPCMS的开发规范,但我觉得所有的PHP编程都该如此。写了那么多PHP,很多编码对照这规范都感觉欠缺很多,今后一定要对照纠正。
Phpcms 编码规范
1. 引言…. 2
2. 适用范围…. 2
3. 标准化的重要性和好处…. 3
4. PHP编码规范与原则…. 3
4.1. 代码标记… 3
4.2. 注释… 3
4.3. 书写规则… 4
4.3.1. 缩进… 4
4.3.2. 大括号{}、if和switch. 4
4.3.3. 运算符、小括号、空格、关键词和函数… 5
4.3.4. 函数定义… 6
4.3.5. 引号… 6
4.3.6. 多语言问题… 7
4.4. 命名原则… 8
4.4.1. 变量、对象、函数名… 8
4.4.2. 常量… 8
4.5. 变量的初始化与逻辑检查… 8
4.6. 安全性… 9
4.7. 兼容性… 9
4.8. 代码重用… 10
4.9. 其他细节问题… 10
4.9.1. 包含调用… 10
4.9.2. 错误报告级别… 11
5. 数据库设计…. 11
5.1. 字段… 11
5.1.1. 表和字段命名… 11
5.1.2. 字段结构… [...]

Tags:

Leave a Comment

PHP.ini 方式防注或挂马

作者:lis0
来源:lis0’s Blog
本来这两天研究phpIDS,使用文件是:当要在防止页面攻击时,可在页面的头部include防攻击文件,就像通用防注入文件。我们可以用三种情况来办到:
1、在每个文件内引用。这样的文件是可以,不过如果一个网站内有几百个文件的话就不方便了。
2、在共同包含文件内引用一下,比如 config.inc.php。这是一个好办法,也是目前市场上比较流行的做法。
3、在php.ini中引用。在配置文件内引用的话,将影响到所有的网站,包含所有页面,这就像当年流行的一些免费空间商,当你免费开通一个ftp空间,上传网站以后,空间内会出现广告一样。不知道是不是这种方法,但是目的是一样的。这样做的好处是:如果是一个公司或者是一个企业内部网站的话,即安全,维护也方便。
前两种方法大家都清楚,第三种就是在php.ini中,找到此节:

Tags: ,

Leave a Comment

PHP实现获取客户端IP地址以及IP地址的伪造

以下是目前网上比较常用的获取客户端IP地址的方法

?View Code PHP<?php
function get_ip_address() {
if (isset($_SERVER)) {
if (isset($_SERVER[’HTTP_X_FORWARDED_FOR’])) {
$ip = $_SERVER[’HTTP_X_FORWARDED_FOR’];
} elseif (isset($_SERVER[’HTTP_CLIENT_IP’])) {
$ip = $_SERVER[’HTTP_CLIENT_IP’];
[...]

Tags: ,

Comments (2)