中山php|最优网络中山做网站 中山php建站

最优良人

2012/06/07 at 17:40

php字符串截取函数,自动清除网页标签

/**
* 字符串截取函数 自动清除网页标签
**/
Function str_cut($string, $length = 80, $etc = '...', $code = 'UTF-8')
{
$string = strip_tags(preg_replace('!\s+!', $string, ' '));
if ($length == 0)
return '';
if ($code == 'UTF-8') {
$pa = "/[\x01-\x7f]|[\xc2-\xdf][\x80-\xbf]|\xe0[\xa0-\xbf][\x80-\xbf]|[\xe1-\xef][\x80-\xbf][\x80-\xbf]|\xf0[\x90-\xbf][\x80-\xbf][\x80-\xbf]|[\xf1-\xf7][\x80-\xbf][\x80-\xbf][\x80-\xbf]/";
}
else {
$pa = "/[\x01-\x7f]|[\xa1-\xff][\xa1-\xff]/";
}
preg_match_all($pa, $string, $t_string);
if (count($t_string[0]) > $length)
return join('', array_slice($t_string[0], 0, $length)) . $etc;
return join('', array_slice($t_string[0], 0, $length));
}

标签:
comments Comments (4)    -
2012/06/05 at 17:43

在线客服代码,qq,msn,skype,淘宝旺旺,阿里巴巴贸易通,雅虎通

1.QQ在线咨询代码
(qq在线交谈代码/qq在线客服代码/qq在线状态代码/qq在线客服代码)
(将66757924换成你的号码,site后面换成你的网站就可以了)

<a target="blank" href="http://wpa.qq.com/msgrd?V=1&Uin=66757924&Site=服务易& Menu=yes"><img border="0" SRC=http://wpa.qq.com/pa?p=1:66757924:6 alt="点击这里给我发消息" align="absmiddle"></a>

2.MSN在线咨询代码

用的时候把[邮件地址]写成你的MSN账号,不要方括号,用链接即可,如

<a target="blank" href="msnim:chat?contact=sliang@zui88.com">MSN在线客服</a>

3.skype在线状态代码生成
将yisung换成你的skype ID就可以了,需要在skype个人账户里设置对任何人显示状态
<a target="blank" href="skype:mengsajewel?call"><img src=http://mystatus.skype.com/smallclassic/yisung style="border: none;" alt="Call me!" /></a>

更多的skype在线状态代码生成样式,请查看skype的官方网站

http://www.skype.com/share/buttons/

4.淘宝旺旺

<a target="_blank" href="http://amos1.taobao.com/msg.ww?v=你的旺旺名=1" ><img border="0" src="http://amos1.taobao.com/online.ww?v=你的旺旺名=1" alt="点击这里发taobao旺旺消息" /></a>

5.阿里贸易通

chqllm改成你的ID就行了,还有ALT改成你的内容
<a target=_blank href="http://scs1.sh1.china.alibaba.com/msg.atc?v=1&uid=mengsajewel"><img border=0 src="http://scs1.sh1.china.alibaba.com/online.atc?v=1&uid=chqllm&s=2" alt="最优工作室" align="absmiddle"></a>

6.雅虎通

<a target=_blank href=http://edit.yahoo.com/config/send_webmesg?.target=你的雅虎通号码& amp;.src=pg><img border=0 align=absmiddle src=http://opi.yahoo.com/online?u=你的雅虎通号码&m=g&t=2 alt=雅虎通在线状态 title=给我发送雅虎通消息></a>

标签:
comments Comments (427)    -
2012/06/04 at 15:05

php清空某个目录的方法

以下代码可以清空多层的目录结构:

function del_dir($dir){
{
if (!$dir) { return ; }
$cacheDir = $dir;
$dh = opendir($cacheDir);
while ( $file = readdir($dh) ) {

if (($file == '.') || ($file == '..')) { continue; }

if (file_exists( $cacheDir .'/'.$file)) {
if(is_dir( $cacheDir .'/'.$file)){
del_dir($cacheDir .'/'.$file);
}elseif (!unlink($cacheDir .'/'. $file)) {

//删除完操作
}
}
}

}
}

标签:
comments Comments (82)    -
2012/06/04 at 12:15

phpmyadmin导出的sql如何通过php导入

以下函数可以直接把从phpmyadmin导出的sql文件直接通过php插入数据库:

//$file表示通过读取sql文件返回的字符串,比如$file2=file_get_contents('db.sql');

function import($file2){

$Db = new Db();
$file2=explode("\n",$file2);//将文件内容按行读入到数组

$c1=count($file2);
for($j=0;$j<$c1;$j++)
{
$ck=substr($file2[$j],0,4);//取每行的前4个字符
if( ereg("#",$ck)||ereg("--",$ck) )//去掉注释
{
continue;
}
$arr[]=$file2[$j];//将去掉注释的文件内容按行读入数组$arr,数组每个元素对应一行
}
$read=implode("\n",$arr); //重新组织文件内容到一个字符串,(按照原来分好的一行一行的)
$sql=str_replace("\r",'',$read);//去掉"\r(回车符)"

$detail=explode(";\n",$sql);
//将经上述整理过的文件内容再次按一条完整的sql语句(以;和\n分隔)导入到数组$detail,
//此时数组detail的每个元素对应一条完整的sql语句
$count=count($detail);
for($i=0;$i<$count;$i++)
{
$sql=str_replace("\r",'',$detail[$i]);//去掉每行sql中的回车符
$sql=str_replace("\n",'',$sql);//去掉换行符
$sql=trim($sql);//去掉前后空格
//现在的$sql
$Db->query($sql);

}

}

标签:,
comments Comments (21)    -
2012/06/02 at 10:16

php date函数的时区问题,输出时间有误

问题:echo date('o-m-j H:i'); 输出结果与本地时间相差8小时。
原因:时区未正确设置。
两种解决方法:

1.加入date_default_timezone_set('Asia/Shanghai');
2. 修改php.ini
[Date]
; Defines the default timezone used by the date functions
date.timezone = PRC 注:PRC为中化人民共和国

标签:,
comments Comments (15)    -
2012/06/01 at 11:03

php使用mail函数发送邮件,解决乱码问题

$to = 'sales@zui88.com';
$subject = "=?UTF-8?B?".base64_encode('网站收到一个新信息')."?=";
$message = "
用户姓名:{$_POST['name']}\n
用户邮箱:{$_POST['email']}\n
用户电话:{$_POST['contact']}\n
留言内容:{$_POST['content']}
";
$headers = 'From: webmaster@zui88.com' . "\r\n" .
'Reply-To: webmaster@zui88.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
$headers .= 'Content-type: text/html; charset=utf-8' . "\r\n";

mail($to, $subject, $message, $headers);

标签:, ,
comments Comments (24)    -
2012/05/30 at 17:46

移植方便的php数据库操作类,建表增删改查

<?php
/**
*
* 数据操作类
* @author Xiaoqiang
* @link //
* @copyright Xiaoqiang
* @version Svn $Id$
* @package
*/
class Db {

var $links;
// 构造函数,初始化数据库(主机,用户名,密码,数据库名)
function __construct() {

$this->links = mysql_connect(DB_HOST, DB_USER, DB_PWD);
if(DEBUG){
mysql_select_db(DB_NAME) or die('ERROR:'.mysql_error());
}
else{
mysql_select_db(DB_NAME);
}
$char_sql = "SET NAMES '" . CHARSET . "'";
$this->query($char_sql);
}

/**
* ****************** 操作 ******************
*/
/**
* 增删改查操作方法
* 输入sql语句
* 返回布尔值或结果集$row
*/
function query($sql) {
if(DEBUG){
$render = mysql_query($sql) or die('query ERROR:'.mysql_error()."<br>sql语句出错:" . $sql);
return $render;
}
else{
return mysql_query($sql);
}
}
/**
* 计算行数方法
* 输入
* 结果数组
*/
function count($table,$condition='1') {

$sql = "select count(*) from `".DB_PREFIX.$table."` where $condition";
$result = $this->select($sql);
return $result[0]['count(*)'];
}
/**
* 原始的sql语句查操作方法
* 输入sql语句
* 结果数组
*/
function select($sql) {
$row = $this->query($sql);
$results = array();
while($arr = $this->fetch($row)){
$results[] = $arr;
}
//$this->free_result($row);
return $results;
}

/**
* 检查某字段是否存在某值
* @param 输入表名.字段,值
* @return id 或者 false
**/
function check_exists($table,$val){
$render = false;
$tab = explode('.',$table);
if($tab['1'] && $tab['1']!='id'){
$fields = $tab['1'];
$table = "{$tab[0]}.id,{$fields}";
}
else{
$fields = 'id';
$table = $tab[0].".id";
}
$condition = "`$fields` = '{$val}'";
$detail = $this->read($table,$condition);
if($detail[$fields]){
$render = $detail['id'];
}
return $render;
}

/**
* 查询多条数据方法
* 输入表名.字段,字段;查询条件,条数
* 如果条件是数组,则进入高级搜索模式
* 返回结果数组
*/
function readall($table,$condition='1',$limit='') {
$tab = explode('.',$table);
$table = $tab['0'];
if($tab['1']){
$fields = $tab['1'];
$fields_array =explode(',',$fields);
$fields = '';
foreach( $fields_array as $one){
$fields .= "`$one`,";
}
$fields = rtrim($fields,',');
}
else{
$fields = '*';
}
if(is_array($condition)){
$condition = $this->parse_condition($condition);
}
$sql = "select $fields from `".DB_PREFIX.$table."` where $condition";
if($limit)$sql .= " limit $limit";
return $this->select($sql);
}
/**
* 查询单条数据方法
* 输入表名.字段,字段;查询条件
* 返回结果数组
*/
function read($table,$condition='1') {
$render = $this ->readall($table,$condition,1);
return $render[0];
}
/**
* 修改数据方法
* 输入表名,插入数据array('字段'=>'值'),条件
* 返回布尔值
*/
function update($table,$data,$condition ) {

$set = '';
foreach( $data as $key=>$val){
$set .= "`$key` = '".$val."',";
}
$set = rtrim($set,',');
if(is_array($condition)){
$condition = $this->parse_condition($condition);
}
$sql = "update `".DB_PREFIX.$table."` set $set where $condition";
return $this->query($sql);
}
/**
* 插入数据方法
* 输入表名,数据array('字段'=>'值')
* 返回布尔
*/
function insert($table,$data) {

$fields = array();
$values = array();

foreach( $data as $key=> $val){
if(is_array($val)){
$_values = array();
$_fields = array();
foreach( $val as $k=> $v){
$_fields[]= "`$k`";
$_values[]= "'{$v}'";
}
$fields = $_fields;
$values[] = '('.implode(',',$_values).')';
}
else{
$fields[] = "`$key`";
$values[] = "'{$val}'";
}
}
$fields = implode(',',$fields);
$values = implode(',',$values);
$sql = "insert into `".DB_PREFIX.$table."` ($fields) values($values)";
return $this->query($sql);
}
/**
* 删除数据方法
* 输入表名,条件
* 返回bool
*/
function delete($table,$condition) {

if(empty($condition)){
die('条件不能为空');
}
if(is_array($condition)){
$condition = $this->parse_condition($condition);
}
$sql = "delete from `".DB_PREFIX.$table."` where $condition";
return $this->query($sql);
}
/**
* 解析条件的函数
* @param 条件数组
* <code>
$arr[] = "`id`==0";
$arr[] = "`id`==5";
$arr['id'] = "5";
$arr['or'][] = "`id`!=2";
$arr['or'][] = "`id`!=1";
$arr['or'][] = "`id`!=2";
$arr['groups'][]='id';
$arr['orders']['id']='asc';
$arr['orders']['td']='DESC';
* </code>
* @return str
**/
function parse_condition($condition){
$and = '1';
$or = '0';
$groups = array();
$orders = array();
foreach( $condition as $key=>$val){
if(is_numeric($key)){
$and .= " and $val";
}
elseif(strtolower($key)== 'or'){
//处理or条件
if(is_array($val)){
foreach( $val as $k=>$v){
if(is_numeric($k)){
$or .= " or {$v}";
}
elseif(is_array($v)){
$v = implode(',',$v);
$or .= " or `$k` in ($v)";
}else{
$or .= " or `$k='{$v}'";
}
}

}else{
$or .= " or $val'";
}
}
elseif(strtolower($key)== 'groups'){
//处理group by
foreach( $val as $k=>$v){
$groups[] = $v;
}

}elseif(strtolower($key)== 'orders'){
//处理order by
foreach( $val as $k=>$v){
$orders[] = $k.' '.$v;
}

}else{
if(is_array($val)){
$val = implode(',',$val);
$and .= " and `$key` in ($val)";
}else{
$and .= " and `$key`='{$val}'";
}
}
}
if($and!='1' && $or!='0')$where = $and.' or '.$or;
elseif($and!='1') $where = $and;
elseif($or!='0') $where = $or;
if($groups)$where .= " group by ".implode(',',$groups);
if($orders)$where .= " order by ".implode(',',$orders);
$where = str_replace('1 and','',str_replace('0 or','',$where));

return $where;
}
/**
* 锁表方法
* 输入表名,锁定类型,r or w 写锁要放在读锁前面
* 返回bool
*/
function lock($table,$type='r') {

if($type=='r'){
$type = 'READ';
}
else{
$type = 'WRITE';
}
$sql = "lock table `".DB_PREFIX.$table."` $type";
return $this->query($sql);
}
/**
* 解锁表方法
*
* 返回bool
*/
function unlock( ) {

$sql = "unlock tables";
return $this->query($sql);
}
/**
* 结果集放入数组方法
* 返回数组,指针下移
*/

function fetch($row) {

return mysql_fetch_array($row,MYSQL_ASSOC);

}

/**
* 计算结果集行数方法
* 输入$row
* 返回行数
*/

function num_rows($row) {

return mysql_num_rows($row);

}

/**
* 计算结果集列数方法
* 输入$row
* 返回列数
*/

function num_fields($row) {

return mysql_num_fields($row);

}

/**
* 释放result结果集内存
* 返回布尔值
*/

function free_result($row) {

return mysql_free_result($row);

}

/**
* 查看指定表的字段名
* 输入表名
* 返回全部字段名数组
*/
function list_fields($table) {
$fields = mysql_list_fields(DB_NAME, DB_PREFIX.$table, $this->links);
$columns = mysql_num_fields($fields);

for ($i = 0; $i < $columns; $i++) {
$row[$i] = mysql_field_name($fields, $i);
}
return $row;

}

/**
* 查看数据库版本方法
*/

function version() {
return mysql_get_server_info();

}

/**
* 插入时查看插入ID
*/

function insert_id() {
return mysql_insert_id();

}
/**
* 分页方法
*/

function page($table,$condition='1',$pagesize=20,$id='page') {
$page = $_GET[$id];
if(!$page)$page= 0 ;
elseif(!is_numeric($page))die('分页出错');

//查找结果集
$p = $page * $pagesize;
$limit = $p.",".$pagesize;
$results = $this->readall($table,$condition,$limit);

//取得结果集行数
$num = $this->count($table,$condition);
//定义最后页 $maxpage
if ($num % $pagesize) {
$maxpage = (int) ($num / $pagesize +1);
} else
$maxpage = $num / $pagesize;
if(STATICS){
//从服务器端取得url信息

if($_GET[$id] === null){
$_SERVER["REQUEST_URI"] = str_replace('index.php','',$_SERVER["REQUEST_URI"]);
$_SESSION[$id] = str_replace('.html','',$_SERVER["REQUEST_URI"],$count);
$_SESSION[$id] = $count?$_SESSION[$id] :$_SESSION[$id].'index';
if(!sizeof($_GET))$_SESSION[$id].="-htm";
}
$str = "<div class=pg style=padding-top:25px;><a href=$_SESSION[$id]-".$id."-0.html>First</a> ";
if($page)$str .= "<a href=$_SESSION[$id]-".$id."-".($page-1).".html>Previous</a> ";
if($page-3>=0)$str .="<a href=$_SESSION[$id]-".$id."-".($page-3).".html>".($page-2)."</a> ";
if($page-2>=0)$str .="<a href=$_SESSION[$id]-".$id."-".($page-2).".html>".($page-1)."</a> ";
if($page-1>=0)$str .="<a href=$_SESSION[$id]-".$id."-".($page-1).".html>".$page."</a> ";
if($page < $maxpage)$str .=($page+1)." ";
if($page+1 < $maxpage)$str .="<a href=$_SESSION[$id]-".$id."-".($page+1).".html>".($page+2)."</a> ";
if($page+2 < $maxpage)$str .="<a href=$_SESSION[$id]-".$id."-".($page+2).".html>".($page+3)."</a> ";
if($page+3 < $maxpage)$str .="<a href=$_SESSION[$id]-".$id."-".($page+3).".html>".($page+4)."</a> ";
if($page+1 < $maxpage)$str .="<a href=$_SESSION[$id]-".$id."-".($page+1).".html>Next</a> ";
if(!$maxpage)$maxpage=1;
$str .="<a href=$_SESSION[$id]-".$id."-".($maxpage-1).".html>Last</a> <a href=javascript:;> ".($page+1)."/".$maxpage."Total</a> </div>";
}
else{
//从服务器端取得url信息

if($_GET[$id] === null){
$_SESSION[$id] = $_SERVER["REQUEST_URI"];
if(!sizeof($_GET))$_SESSION[$id].="?p=1";

}

$str = "<div class=pg style=padding-top:25px;><a href=$_SESSION[$id]&".$id."=0>First</a> ";
if($page)$str .= "<a href=$_SESSION[$id]&".$id."=".($page-1).">Previous</a> ";
if($page-3>=0)$str .="<a href=$_SESSION[$id]&".$id."=".($page-3).">".($page-2)."</a> ";
if($page-2>=0)$str .="<a href=$_SESSION[$id]&".$id."=".($page-2).">".($page-1)."</a> ";
if($page-1>=0)$str .="<a href=$_SESSION[$id]&".$id."=".($page-1).">".$page."</a> ";
if($page < $maxpage)$str .=($page+1)." ";
if($page+1 < $maxpage)$str .="<a href=$_SESSION[$id]&".$id."=".($page+1).">".($page+2)."</a> ";
if($page+2 < $maxpage)$str .="<a href=$_SESSION[$id]&".$id."=".($page+2).">".($page+3)."</a> ";
if($page+3 < $maxpage)$str .="<a href=$_SESSION[$id]&".$id."=".($page+3).">".($page+4)."</a> ";
if($page+1 < $maxpage)$str .="<a href=$_SESSION[$id]&".$id."=".($page+1).">Next</a> ";
if(!$maxpage)$maxpage=1;
$str .="<a href=$_SESSION[$id]&".$id."=".($maxpage-1).">Last</a> <a href=javascript:;> ".($page+1)."/".$maxpage."Total</a> </div>";
}
return array($results,$str);
}

/**
* 左连接多表查询
* @param
* @return
**/
function leftjoin($left,$right,$on,$condition,$limit=1){
$left = explode('.',$left);
$right = explode('.',$right);
$left['0'] = "`".DB_PREFIX.$left['0']."`";
$right['0'] = "`".DB_PREFIX.$right['0']."`";
if($left['1'] || $right['1']){
$fields = '';
if(!empty($left['1'])){
$_field = explode(',',$left['1']);
foreach( $_field as $one){
$fields.=$left['0'].'.`'.$one."`,";
}
}
if(!empty($right['1'])){
$_field = explode(',',$right['1']);
foreach( $_field as $one){
$fields.=$right['0'].".`".$one."`,";
}
}
$fields = rtrim($fields,',');
}
else{
$fields = '*';
}
$on = str_replace('\2',$right[0],str_replace('\1',$left[0],$on));
$condition = str_replace('\2',$right[0],str_replace('\1',$left[0],$condition));
$sql = "SELECT {$fields} FROM {$left[0]} LEFT JOIN {$right[0]} ON ( {$on} ) WHERE ( {$condition} ) LIMIT {$limit} ";

$query = $this->query($sql);
$field_num = mysql_num_fields($query);
while($arr = mysql_fetch_array($query,MYSQL_NUM)){
$_arr = array();
for( $i=0 ; $i<$field_num ; $i++ ){
$table = str_replace(DB_PREFIX,'',mysql_field_table($query, $i));
$field = mysql_field_name($query, $i);
$_arr[$table.'.'.$field] = $arr[$i];
}
$array[]=$_arr;

}
$array=$limit==1?$arrat[0]:$array;
return $array;
}
/**
* 用于创建一个表结构
* @param 表名,结构 array(字段,格式,注释) 表注释 索引array(字段,字段) 全文搜索(字段,字段)
* @return 打印
**/

function createTable($tablename,$data,$comment='',$key='',$fulltext=''){
$_key='';
$_type = '';
$_fulltext = '';
$tablename = DB_PREFIX.$tablename;
$sql = "CREATE TABLE IF NOT EXISTS `$tablename` (
`id` int(10) unsigned NOT NULL auto_increment COMMENT 'ID',
";
foreach( $data as $one){
switch($one[1]){
case '':
$_type = 'varchar(255)';
break;
case 'tinyint':
$_type = 'tinyint(1)';
break;
case 'time':
$_type = 'int(10)';
break;
default:

if(strpos($one[1],'.')!==false){
$_type = explode('.',$one[1]);
$_type = $_type[0].'('.$_type[1].')';
}
else{
$_type = $one[1];
}
break;
}
$sql.="`{$one[0]}` $_type NOT NULL COMMENT '{$one[2]}',
";
}

if(!empty($key)){
foreach( $key as $one){
$_key.="KEY `$one` (`$one`),
";
}
}
if(!empty($fulltext)){
foreach( $fulltext as $one){
$_key.="FULLTEXT `$one` (`$one`),
";
}
}

$sql.= $_key.$_fulltext."PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=".CHARSET." COMMENT '$comment';
";
if(!$_GET[sure]){

if(empty($_GET)){
$url = '?sure=1';

}
else{
$url = $_SERVER["REQUEST_URI"].'&sure=1';
}

echo "即将执行以下建表操作:<br><pre>$sql<a href=$url>确定</a></pre>";
}
elseif($_GET[sure] && $this->query($sql)){

echo "完成操作";
}
else{
echo "操作失败:<br>><pre>$sql</pre>";
}

exit;

}
};

//实例

define("DB_HOST", 'localhost');
define("DB_USER", 'root');
define("DB_PWD", '');
define("DB_NAME", "test");
define("DB_PREFIX", "test_");
define('CHARSET', 'gbk'); // 编码
define("GEBUG", 1);

//建表
$Db=new Db();
$data[] = array('title','','标题');
$data[] = array('open','tinyint.1','是否公开');
$data[] = array('keyword','','关键词');
$data[] = array('content','text','内容');
$data[] = array('created','time','时间');
//$Db->createTable('article',$data,'文章表');
//增删改查
$data['title']='t';
$data['keyword']='k';
$Db->insert('article',$data);
$num = $Db->read('article.id','1 order by id desc');
$data['created'] = mktime()+$num['id'];
$Db->update('article',$data,"`id` =2");
$Db->delete('article',"`id` =3");

?>

标签:,
comments Comments (3)    -
2012/05/30 at 16:48

php采集程序,提取网页超链接,邮箱或其他特定内容

以下代码从上一篇文章修改而来,专门用于提取网页所有超链接,邮箱或其他特定内容

<?php

function fetch_urlpage_contents($url){
$c=file_get_contents($url);
return $c;
}
//获取匹配内容
function fetch_match_contents($begin,$end,$c)
{
$begin=change_match_string($begin);
$end=change_match_string($end);
$p = "#{$begin}(.*){$end}#iU";//i表示忽略大小写,U禁止贪婪匹配
if(preg_match_all($p,$c,$rs))
{
return $rs;}
else { return "";}
}//转义正则表达式字符串
function change_match_string($str){
//注意,以下只是简单转义
$old=array("/","$",'?');
$new=array("\/","\$",'\?');
$str=str_replace($old,$new,$str);
return $str;
}

//采集网页
function pick($url,$ft,$th)
{
$c=fetch_urlpage_contents($url);
foreach($ft as $key => $value)
{
$rs[$key]=fetch_match_contents($value["begin"],$value["end"],$c);
if(is_array($th[$key]))
{ foreach($th[$key] as $old => $new)
{
$rs[$key]=str_replace($old,$new,$rs[$key]);
}
}
}
return $rs;
}

$url="http://www.zui88.com"; //要采集的地址
$ft["a"]["begin"]='<a'; //截取的开始点<br />
$ft["a"]["end"]='>'; //截取的结束点

$rs=pick($url,$ft,$th); //开始采集

print_r($rs["a"]);

?>

标签:,
comments Comments (190)    -
2012/05/30 at 16:08

php小偷程序,简单的php采集代码

<?php

function fetch_urlpage_contents($url){
$c=file_get_contents($url);
return $c;
}
//获取匹配内容
function fetch_match_contents($begin,$end,$c)
{
$begin=change_match_string($begin);
$end=change_match_string($end);
$p = "{$begin}(.*){$end}";
if(eregi($p,$c,$rs))
{
return $rs[1];}
else { return "";}
}//转义正则表达式字符串
function change_match_string($str){
//注意,以下只是简单转义
//$old=array("/","$");
//$new=array("\/","\$");
$str=str_replace($old,$new,$str);
return $str;
}

//采集网页
function pick($url,$ft,$th)
{
$c=fetch_urlpage_contents($url);
foreach($ft as $key => $value)
{
$rs[$key]=fetch_match_contents($value["begin"],$value["end"],$c);
if(is_array($th[$key]))
{ foreach($th[$key] as $old => $new)
{
$rs[$key]=str_replace($old,$new,$rs[$key]);
}
}
}
return $rs;
}

$url="http://www.zui88.com"; //要采集的地址
$ft["title"]["begin"]="<title>"; //截取的开始点
$ft["title"]["end"]="</title>"; //截取的结束点
$th["title"]["中山"]="广东"; //截取部分的替换

$ft["body"]["begin"]="<body>"; //截取的开始点
$ft["body"]["end"]="</body>"; //截取的结束点
$th["body"]["中山"]="广东"; //截取部分的替换

$rs=pick($url,$ft,$th); //开始采集

echo $rs["title"];
echo $rs["body"]; //输出
?>

标签:,
comments Comments (289)    -
2012/05/29 at 11:38

文字图片向上滚动的JS代码

<div id="demo">
<div id="demo1">
<ul>

<li>
文字图片内容

 

</li>

</ul>
</div>
<div id="demo2"></div>

 

<script type="text/javascript">
var speed=10;
var FGDemo=document.getElementById('demo');
var FGDemo1=document.getElementById('demo1');
var FGDemo2=document.getElementById('demo2');
FGDemo2.innerHTML=FGDemo1.innerHTML
function Marquee1(){
if(FGDemo2.offsetHeight-FGDemo.scrollTop<=0)
FGDemo.scrollTop-=FGDemo1.offsetHeight
else{
FGDemo.scrollTop++
}
}
var MyMar1=setInterval(Marquee1,speed)
FGDemo.onmouseover=function() {clearInterval(MyMar1)}
FGDemo.onmouseout=function() {MyMar1=setInterval(Marquee1,speed)}
</script>

</div>

标签:
comments Comments (193)    -