为开发者准备的9个实用PHP代码片段

一.查看邮件是否已被阅读

当你发送邮件时,你肯定很想知道你的邮件是否已被对方查看。下面的代码就能实现记录阅读你邮件的IP地址,还有实际的阅读日期和时间。 error_reporting(0); Header("Content-Type: image/jpeg"); //Get IP if (!empty($_SERVER['HTTP_CLIENT_IP'])) { $ip=$_SERVER['HTTP_CLIENT_IP']; } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) { $ip=$_SERVER['HTTP_X_FORWARDED_FOR']; } else { $ip=$_SERVER['REMOTE_ADDR']; } //Time $actual_time = time(); $actual_day = date('Y.m.d', $actual_time); $actual_day_chart = date('d/m/y', $actual_time); $actual_hour = date('H:i:s', $actual_time); //GET Browser $browser = $_SERVER['HTTP_USER_AGENT']; //LOG $myFile = "log.txt"; $fh = fopen($myFile, 'a+'); $stringData = $actual_day . ' ' . $actual_hour . ' ' . $ip . ' ' . $browser . ' ' . "\r\n"; fwrite($fh, $stringData); fclose($fh); //Generate Image (Es. dimesion is 1x1) $newimage = ImageCreate(1,1); $grigio = ImageColorAllocate($newimage,255,255,255); ImageJPEG($newimage); ImageDestroy($newimage); ?> 源代码:http://www.emoticode.net/php/code-to-find-out-if-your-email-has-been-read.html

二.从网页中提取关键词

这段优秀的代码可以简单地实现从网页中提取关键词的功能。 $meta = get_meta_tags('http://www.emoticode.net/'); $keywords = $meta['keywords']; // Split keywords $keywords = explode(',', $keywords ); // Trim them $keywords = array_map( 'trim', $keywords ); // Remove empty values $keywords = array_filter( $keywords ); print_r( $keywords ); 源代码:http://www.emoticode.net/php/extract-keywords-from-any-webpage.html

三.查找页面上的所有链接

使用DOM,你可以在任意页面上抓取链接,示例如下。

$html = file_get_contents('http://www.php100.com');

$dom = new DOMDocument();

@$dom->loadHTML($html);

// grab all the on the page

$xpath = new DOMXPath($dom);

$hrefs = $xpath->evaluate("/html/body//a");

for ($i = 0; $i < $hrefs->length; $i++) {

$href = $hrefs->item($i);

$url = $href->getAttribute('href');

echo $url.'';

}

源代码:http://snipplr.com/view/70489/find-all-links-on-a-page/ 原文地址:http://www.php100.com/html/dujia/2015/0108/8305.html

原文发布于微信公众号 - php(phpdaily)

原文发表时间:2015-01-11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

配置WordPress去使用远程数据库

首次通过Web界面和本地数据库安装和配置时,WordPress会创建一个名为的文件wp-config.php。配置初始远程数据库设置。 提示:如果你还没有Wor...

1K4
来自专栏编程坑太多

react-native组建wechat

1523
来自专栏散尽浮华

分布式监控系统Zabbix3.4-针对MongoDB性能监控操作笔记

公司在IDC机房的一台服务器上部署了MongoDB,由于所存储的业务数据比较重要,所以对MongoDB的监控显得尤为重要!Zabbix监控MongoDB性能的原...

4104
来自专栏SpringBoot 核心技术

第三十九章:基于SpringBoot & Quartz完成定时任务分布式单节点持久化

68810
来自专栏Hadoop实操

如何在Redhat7.4安装CDH5.15

7093
来自专栏happyJared

IDEA快捷键拆解系列(二):File篇

  以下是关于File导航项及其每一子项的拆解,其中,加粗部分的选项是博主认为比较重要的。

961
来自专栏ChaMd5安全团队

CVE-2018-1000156:GNU Patch任意代码执行漏洞分析

GNU Patch 源码下载地址:https://ftp.gnu.org/gnu/patch/

2672
来自专栏dalaoyang

SpringBoot使用WebFlux响应式编程操作数据库

在之前一篇简单介绍了WebFlux响应式编程的操作,我们在来看一下下图,可以看到,在目前的Spring WebFlux还没有支持类似Mysql这样的关系型数据库...

2821
来自专栏乐沙弥的世界

slave have equal MySQL server UUIDs

    最近在部署MySQL主从复制架构的时候,碰到了"Last_IO_Error: Fatal error: The slave I/O thread sto...

971
来自专栏Hadoop实操

如何在Redhat7.4安装CDH6.0.0_beta1

7752

扫码关注云+社区

领取腾讯云代金券