今天是2010年9月2日
动力十足~放开做吧!
九
03
今天是2010年9月2日
动力十足~放开做吧!
九
01
<?php
class GetMacAddr
{
var $return_array = array(); // 返回带有MAC地址的字串数组
var $mac_addr;
function GetMacAddr($os_type)
{
switch ( strtolower($os_type) )
{
case “linux”:
$this->forLinux();
break;
case “solaris”:
break;
case “unix”:
break;
case “aix”:
break;
default:
$this->forWindows();
break;
}
$temp_array = array();
foreach ( $this->return_array as $value )
{
if ( preg_match( “/[0-9a-f][0-9a-f][:-]“.”[0-9a-f][0-9a-f][:-]“.”[0-9a-f][0-9a-f][:-]“.”[0-9a-f][0-9a-f][:-]“.”[0-9a-f][0-9a-f][:-]“.”[0-9a-f][0-9a-f]/i”, $value, $temp_array ) )
{
$this->mac_addr = $temp_array[0];
break;
}
}
unset($temp_array);
return $this->mac_addr;
}
function forWindows()
{
@exec(“ipconfig /all”, $this->return_array);
if ( $this->return_array )
return $this->return_array;
else{
$ipconfig = $_SERVER["WINDIR"].”\system32\ipconfig.exe”;
if ( is_file($ipconfig) )
@exec($ipconfig.” /all”, $this->return_array);
else
@exec($_SERVER["WINDIR"].”\system\ipconfig.exe /all”, $this->return_array);
return $this->return_array;
}
}
function forLinux()
{
@exec(“ifconfig -a”, $this->return_array);
return $this->return_array;
}
}
?>
<?
$mac = new GetMacAddr(PHP_OS);
$mac=$mac->mac_addr;
echo $mac;
?>
九
01
www.ezinearticles.com
www.webpronews.com
www.ideamarketers.com
www.certificate.net
www.goarticles.com
www.netterweb.com
www.articlecentral.com
www.articlefinders.com
www.web-source.net
www.biz-whiz.com
www.xongoo.com
www.websitefuel.com
www.zinos.com
www.addme.com
www.hamazines.com
www.warriorforum.com
www.internethomebusinessarticles.com
www.linksnoop.com
www.submityourarticle.com
www.articlesforwomen.com
www.articlesfactory.com
www.articlez.com
www.isnare.com
www.sideroad.com
www.jorbins.com
www.mainstreetmom.com
www.family-content.com
www.articlesubmissions.com
www.fresh-articles.com
www.netterweb.com
www.freezinesite.com
www.valuablecontent.com
www.womans-netnews.com
www.marketingpitbull.com
www.searchwarp.com
www.awebhostingprovider.com
www.lilengine.com
www.storebuilder.co.uk
www.constant-content.com
www.toparticles.net
www.organic-rankings.com
www.workathomearticles.net
www.webmastertraffictools.com
www.commonconnections.com
www.internethomebusinessarticles.com
www.tigrafix.com/articles/submission.htm
www.allfreelancework.com/submitarticles.php
www.business-opportunity.biz
www.website-traffic.info
www.work-at-home-jobs-iowa.com
www.website-promotion-ranking-services.com
九
01
最近看了一下google,alexa的分析数据,突然发现一个新的问题。以前比较关注的是网站流量排名、流量变化趋势,但是往往忽视了一个重要信息,那就是流量的的来源。 很多国际大网站,比如yahoo.com,google.com,流量来源第一的肯定是美国。这个好理解,第二是谁?你猜得到吗? 印度! 对,流量来源排第二的是印度。点击下面链接可以看到数据: http://www.alexa.com/data/details/traffic_details/yahoo.com http://www.alexa.com/data/details/traffic_details/google.com http://trends.google.com/websites?q=yahoo.com&geo=all&date=all&sort=0 而且,这不是几个站点的孤立现象,随着查看更多的国际网站,几乎会发现来自印度的流量都是排前三名。尤其是在一些技术站点,例如sun.com, php.net,印度的流量甚至超过美国,排名第一。 那么只有两种可能: 1、这些网站雇廉价的印度阿三刷流量。 2、印度的上网人数和软件开发者数量已经大的惊人。 第一种可能性不大,第二种可能就不能不让人反思了。 接着我就回想起过去在一些英文网站经常能看到印度人的身影。这也证明印度的印度人不算在美国的印度人开始全面进入英语互联网世界。而英语互联网世界也是全球最大的互联网市场,在这个市场里,美国是主角。印度虽然还不是主角,但是已经越来越显眼,我甚至开始怀疑那些藏在Jack,Tom名字背后的是印度人。 我觉得印度人冲向国际有4个条件: 1、印度是英语国家,所以可以在英语世界畅行无阻。中国人相比之下就很困难了。而且印度人能说,表达能力强,同样在美国公司干,印度人如果考虑印巴原来是一体的,还应该包括巴基斯坦人一般都爬得更快更高。 2、印度人聪明,勤奋好学。据调查统计2003-2004学年,在美国大学的所有外国学生中,来自5个国家的学生占了近50%,其中4个国家在亚洲。印度的留学生人数最多,近8万人;其次是中国6.2万人、韩国5.2万人、日本4.1万人、加拿大2.7万人和中国台湾2.6万人。 3、本国市场小。印度本国的环境非常差,差到什么程度,印度最好的理工大学“印度理工学院相当于清华大学”的教室跟中国贫困山区的中学一样破。原来我一个河北的客户跟我说石家庄那叫个破,我去看了,我说你不知道什么叫破,印度那才真叫破,印度首都新德里市中心的大楼都跟火烧过一样,不相信的可以看我在印度的照片。这样的地方做IT没什么可想的,只有冲向国际。中国程序员还可以吃本国市场虽然大部分也吃不饱,但是印度程序员做本国市场就全得饿死。凡是本国市场不大的都得冲出去,比如澳大利亚全球的影视后期和游戏制作中心。 4、成本低。中国原来成本低,现在不低了。连纺织代工都开始往越南,斯里兰卡转移。 有了这4个条件造就了全球最大的软件外包工厂。班加罗尔的软件公司动辄就是几万人,这和我们几十人的小公司是天壤之别。这且还不算跨国公司在那里设的研发中心Intel,Nokia在那里的研发中心都近万人,连华为都在那里有研发中心。所以印度有了一个数量大的惊人的工程师队伍。而且这些人都很踏实的做技术,业余时间在网上接个几十美金的小活儿干干就美死了,不像中国程序员几百几千的活都看不上,都在想怎么搞个网站拉笔投资然后上市当然鄙人也在其中。 下图是Google Trends 的分析数据 通过google的流量分析可以看到: 1、印度在Java领域的应用很多,这和企业应用开发外包是密不可分的,一年80亿美金的外包单子。印度infosys这样的外包软件公司的程序员动辄都是上万人。 2、印度在PHP和.net应用方面也是紧跟美国。大家都知道美国的虚拟主机90%都是php的,php程序员的职位也多,外包市场最多的开发需求也是php相关的,最流行的系统也都是php的,互联网4大应用:博客wordpress,论坛vBB,phpBB,CMSjoomla,drupal,网店zencart全都是基于php的。印度人大量活跃于这些领域的社区和外包市场。 由此可以看出美国流行的、需求量大的技术应用,印度人都在学习、参与。从Java,php,.net,到python,美国人需要啥,印度人就做啥,完全是对口服务。从这些主要技术站点的流量上来看,中国和南韩、英国、德国这些发达国家大体相当,不过这4个国家的流量都加起来也没有印度大。而且最近发现一些流量很大的英文站点竟然是印度人办的,而流量主要来自美国、英国、德国等发达国家,这意味着印度人不仅在赚开发的钱,同时也在获得大笔的广告收入。 于是印度除了软件外包闻名于世之外,正在迅速成为互联网上一股强大的力量。在美国——这个拥有世界一半财富的国度里尽情的分享互联网带来的巨额收益美国很多广告联盟对网站第一个要求就是网站必须是英文的,并且只有英文,在这点上德国人,法国人,日本人都没份儿。在这个领域几乎没有其他国家能在语言、成本上与它竞争。 正如《世界是平的》所说,科技的汇集与传播使得印度、中国和许多发展中国家成为世界商品和服务产品供给链上的一员,从而为这些发展中国家带来了大量的财富。 区别在于中国靠血汗工厂和环境破坏参与国际分工,印度靠培养更多有知识的大脑在参与国际分工。谁会在全球化浪潮中占据更有利的位置?
九
01
虽然现在大多数微博客都因为种种原因无法访问,但这并没有降低人们对微博客的热情,最近新浪微博挺火的.实际上,自己动手搭建一个类似Twitter的微博客平台并不困难,这里我就介绍一些常见的开源微博客程序,有了这些开源代码,只要稍懂一些电脑知识,就可以在短时间内搭建一个类似饭否或Twitter的微博客平台.
Jaiku
Jaiku(演示地址)是一个基于Python的微博客平台,2007年被Google收购,不过之后并没有对其成功运营,只好在2009年宣布对其停止维护,稍后Google就将Jaiku完全开源,并切换到AppEngine上运行,目前Jaiku完全开源并提供用户免费下载,大家可以到Jaiku源代码项目地址,使用一个SVN工具下载其源代码。
Laconica / StatusNet
Laconica / StatusNet(演示地址)是一个基于PHP和MySQL的开源微型博客系统,也是一个Twitter克隆,可以实现Microblog的常用功能,国外不少微博客系统都是通过这个开源系统架设的。Laconica得到大量应用系统的支持,包括Twitterfeed、Hellotxt和Gravity等,成熟且稳定。点这里下载其源代码。
Yonkly
Yonkly是基于Asp.Net的开源微博客,除了开放源码的版本,它还有一个用于托管的高级独立版本。
Floopo
Floopo是基于PHP和MySQL的免费的微博客系统,它的功能非常类似Twitter,并且提供了强大的后台管理系统。
Sweetter
Sweetter是一个开源的微博客项目,具有一定的投票机制,基于Python,点这里可下载其源程序代码。
Jisko
Jisko的界面和Twitter很像,能够自动通过AJAX更新,也是基于PHP和MySQL的,这个系统可能是西班牙人开发的,使用SVN到这里下载其源代码。
P2 WordPress Theme
WordPress主题的P2(PHP)是一个WordPress的Twitter主题,可以将你的WordPress博客转换成一个类似Twitter的微博客系统,它支持实时更新,发布的信息和评论不许刷新即可显示。
最后介绍两个国内中文的开源微博客系统。
EasyTalk
界面挺像饭否的,API接口也和饭否类似,基于PHP和MySQL,点这里下载源代码。
PageCookery
也是基于PHP和MySQL,支持和叽歪的同步,点这里下载源代码。
Twitter, 饭否, 叽歪,嘀吐等一众微博客皆受伤,但挡不住广大群众对微博客这种形式的热情。或许你愿意自己搭建一个微博客,尽管这看上去没什么意义: 你搭建一个就几个人玩的微博客,那比喊谁谁谁回家还要无趣。但可能有的站长朋友有远大的理想,想迎风破浪,研究一些微博客程序,本文里就介绍了六种开源的微博客程序。
1. Jaiku
Jaiku(演示地址)是一个基于Python的微博客平台,2007年被Google收购,不过之后并没有对其成功运营,只好在2009年宣布对其停止维护,稍后Google就将Jaiku完全开源,并切换到AppEngine上运行,目前Jaiku完全开源并提供用户免费下载,大家可以到Jaiku源代码项目地址,使用一个SVN工具下载其源代码。
2. Laconica
Laconica(演示地址) 是一个基于PHP和MySQL的开源微型博客程序,也是一个Twitter克隆,可以实现Microblog的常用功能,国外不少微博客系统都是通过这个 开源系统架设的。Laconica得到大量应用系统的支持,包括Twitterfeed、Hellotxt和Gravity等。点这里下载其源代码。
3. Sweetter
Sweetter是一个开源的微博客程序,具有一定的投票机制,基于Python,点这里可下载其源程序代码。
4. Jisko
Jisko的界面和Twitter很像,能够自动通过AJAX更新,也是基于PHP和MySQL的,这个系统可能是西班牙人开发的,使用SVN到这里下载其源代码。
最后介绍两个国内中文的开源微博客系统。
5. EasyTalk
国产的开源微博客程序,界面挺像饭否的,API接口也和饭否类似,基于PHP和MySQL,点这里下载源代码。
6. PageCookery
也是基于PHP和MySQL,支持和叽歪的同步,点这里下载源代码。
以Twitter为代表的微博客是今年非常火的社交网络,在国内的发展也在上半年一度非常迅猛,虽然现在大多数微博客都因为种种原因无法访问,但这并没有降低人们对微博客的热情,实际上,自己动手搭建一个类似Twitter的微博客平台并不困难,这里我就介绍一些常见的开源微博客程序,有了这些开源代码,只要稍懂一些电脑知识,就可以在短时间内搭建一个类似饭否或Twitter的微博客平台。
Jaiku
Jaiku(演示地址)是一个基于Python的微博客平台,2007年被Google收购,不过之后并没有对其成功运营,只好在2009年宣布对其停止维护,稍后Google就将Jaiku完全开源,并切换到AppEngine上运行,目前Jaiku完全开源并提供用户免费下载,大家可以到Jaiku源代码项目地址,使用一个SVN工具下载其源代码。
Laconica / StatusNet
Laconica / StatusNet(演示地址)是一个基于PHP和MySQL的开源微型博客系统,也是一个Twitter克隆,可以实现Microblog的常用功能,国外不少微博客系统都是通过这个开源系统架设的。Laconica得到大量应用系统的支持,包括Twitterfeed、Hellotxt和Gravity等,成熟且稳定。点这里下载其源代码。
Yonkly
Yonkly是基于Asp.Net的开源微博客,除了开放源码的版本,它还有一个用于托管的高级独立版本。
Floopo
Floopo是基于PHP和MySQL的免费的微博客系统,它的功能非常类似Twitter,并且提供了强大的后台管理系统。
Sweetter
Sweetter是一个开源的微博客项目,具有一定的投票机制,基于Python,点这里可下载其源程序代码。
Jisko
Jisko的界面和Twitter很像,能够自动通过AJAX更新,也是基于PHP和MySQL的,这个系统可能是西班牙人开发的,使用SVN到这里下载其源代码。
P2 WordPress Theme
WordPress主题的P2(PHP)是一个WordPress的Twitter主题,可以将你的WordPress博客转换成一个类似Twitter的微博客系统,它支持实时更新,发布的信息和评论不许刷新即可显示。
最后介绍两个国内中文的开源微博客系统。
EasyTalk
界面挺像饭否的,API接口也和饭否类似,基于PHP和MySQL,点这里下载源代码。
PageCookery
也是基于PHP和MySQL,支持和叽歪的同步,点这里下载源代码。
九
01
我们知道使用 Gmail 给美国和加拿大拨打电话是完全免费的,现在 Google 则再一次震撼到了我们!只要使用 Gmail 拨打国内电话,通话双方均全部免费!
需要美国代理
操作的步骤如下:
确保登录 Gmail 后可以看到在 Chat 列表中看到 “Call phone”按钮。这有2个方法:
其一、使用美国或加拿大 IP 地址登录 Gmail 肯定能看到该按钮;
其二、把 Gmail 语言设置成 US English ,也是有可能使用到呼叫功能的。
安装 Gmail voice and video chat 浏览器插件。
点击”Chat”列表中的”Call phone”按钮,拨打你自己的 Google Voice 手机号,如:(111) 222-333。
听到 Google Voice 语音提示:“您当前没有新的消息,按“2”健拨打电话,按“4”健更改设置”。我们按“2”健。
再次听到 Google Voice 语音提示:“请按键输入您要拨打的电话号码,按“#”号健确认。如果是国际长途,则请先按键“011”,再输入国家号,最后输入电话号码”。举2个例子:
如果我要拨打的中国移动手机号为:13866667777,则我应按键输入:0118613866667777#。
如果我要拨打的国内固定电话号码为:021-77778888,则我应按键输入:011862177778888#(注:21为上海区号,大家不要输入021,这是错误的。)。
再次听到 Google Vocie 语音提示:“这是一个免费电话!”,接下来电话就直接接通了呢。
九
01
这段时间手头有不少的seo站点都是外文的,包括英文站2个、日文站5个,之前没有做过外文站的seo,感觉在建设外链的时候非常棘手,于是到网上四处收集资料,并通过大量的实践来摸索出一点点菜鸟级别的经验,和大家分享。
1、 和中文网站一样的外链建设方法:比如到各大论坛、博客去发文章、发广告、留个性签名,到个人空间去发日志,到问答里面去添加网址等等方法,这一招主要是针对英文和日文Google的,毕竟百度收录了这些反链文章作用也不大,不能带来潜在客户。有一种观点认为国内网站上发外文网站的外链会被k,我个人觉得是无稽之谈,作用大不大倒是值得探讨。
2、 特别推荐一种外链寻找方法:把你竞争对手,甚至其他关键词排名较好的网站的网址在英文Google里面l“ink:”一下,你就可以找到它的外链资源了。上个星期特别惊喜地发现一个replicawatch排名第一的网站居然是靠一些卑鄙的手段做上去的,完全是靠反链锚文字到很多pr特别高(4以上,很多6的)的可以任意灌水的论坛上去堆堆堆堆再堆堆成山做上去的!从中我也找到了一些非常好用的seo反链资源,当然这里指的是国外的灌水论坛,pr特别高的,大家不妨试试!
3、 英文站和日文站常用的反链资源:社会书签(其实也就是自己的网址收藏吧)、大型博客网(日志)、知名论坛(个性签名)、网站目录提交、问答类网站以及最通常用的友情链接交换(抓住没个机会,毕竟国内的外文友情链接资源很少)
八
31
我们先举一个简单的例子,让大家对Output Control有一个大致的印象:
Example 1.
————————————————————————————-
———————————
ob_start(); //打开缓冲区
echo “Hello\n”; //输出
header(“location:index.php”); //把浏览器重定向到index.php
ob_end_flush();//输出全部内容到浏览器
?>
————————————————————————————-
———————————
所有对header()函数有了解的人都知道,这个函数会发送一段文件头给浏览器,但是如果在使用
这个函数之前已经有了任何输出(包括空输出,比如空格,回车和换行)就会提示出错。如果我
们去掉第一行的ob_start(),再执行此程序,我们会发现得到了一条错误提示:“Header had
all ready send by”!但是加上ob_start,就不会提示出错,原因是当打开了缓冲区,echo后面
的字符不会输出到浏览器,而是保留在服务器,直到你使用flush或者ob_end_flush才会输出,所
以并不会有任何文件头输出的错误!
一、 相关函数简介:
1、Flush:刷新缓冲区的内容,输出。
函数格式:flush()
说明:这个函数经常使用,效率很高。
2、ob_start :打开输出缓冲区
函数格式:void ob_start(void)
说明:当缓冲区激活时,所有来自PHP程序的非文件头信息均不会发送,而是保存在内部缓冲区。
为了输出缓冲区的内容,可以使用ob_end_flush()或flush()输出缓冲区的内容。
3 、ob_get_contents :返回内部缓冲区的内容。
使用方法:string ob_get_contents(void)
说明:这个函数会返回当前缓冲区中的内容,如果输出缓冲区没有激活,则返回 FALSE 。
4、ob_get_length:返回内部缓冲区的长度。
使用方法:int ob_get_length(void)
说明:这个函数会返回当前缓冲区中的长度;和ob_get_contents一样,如果输出缓冲区没有激
活。则返回 FALSE。
5、ob_end_flush :发送内部缓冲区的内容到浏览器,并且关闭输出缓冲区。
使用方法:void ob_end_flush(void)
说明:这个函数发送输出缓冲区的内容(如果有的话)。
6、ob_end_clean:删除内部缓冲区的内容,并且关闭内部缓冲区
使用方法:void ob_end_clean(void)
说明:这个函数不会输出内部缓冲区的内容而是把它删除!
7、ob_implicit_flush:打开或关闭绝对刷新
使用方法:void ob_implicit_flush ([int flag])
说明:使用过Perl的人都知道$│=x的意义,这个字符串可以打开/关闭缓冲区,而
ob_implicit_flush函数也和那个一样,默认为关闭缓冲区,打开绝对输出后,每个脚本输出都直
接发送到浏览器,不再需要调用 flush()
二、深入了解:
1. 关于Flush函数:
这个函数在PHP3中就出现了,是一个效率很高的函数,他有一个非常有用的功能就是刷新browser
的cache.我们举一个运行效果非常明显的例子来说明flush.
Example 2.
————————————————————————————-
———————————
for($i = 1; $i <= 300; $i++ ) print(“ “);
// 这一句话非常关键,cache的结构使得它的内容只有达到一定的大小才能从浏览器里输出
// 换言之,如果cache的内容不达到一定的大小,它是不会在程序执行完毕前输出的。经
// 过测试,我发现这个大小的底限是256个字符长。这意味着cache以后接收的内容都会
// 源源不断的被发送出去。
For($j = 1; $j <= 20; $j++) {
echo $j.”
”;
flush(); //这一部会使cache新增的内容被挤出去,显示到浏览器上
sleep(1); //让程序“睡”一秒钟,会让你把效果看得更清楚
}
?>
————————————————————————————-
———————————
具体效果你可以到这里看看http://www.php2000.com/~uchinaboy/out.php
PHP2000的最新的PHP聊天室就是用的这个技术,可惜的是源代码未公开 L
注:如果在程序的首部加入ob_implicit_flush()打开绝对刷新,就可以在程序中不再使用flush
(),这样做的好处是:提高效率!
2. 关于ob系列函数:
我想先引用我的好朋友y10k的一个例子:
Example 3.
————————————————————————————-
———————————
比如你用得到服务器和客户端的设置信息,但是这个信息会因为客户端的不同而不同,如果想要
保存phpinfo()函数的输出怎么办呢?在没有缓冲区控制之前,可以说一点办法也没有,但是有了
缓冲区的控制,我们可以轻松的解决:
————————————————————-
ob_start(); //打开缓冲区
phpinfo(); //使用phpinfo函数
$info=ob_get_contents(); //得到缓冲区的内容并且赋值给$info
$file=fopen(‘info.txt’,'w’); //打开文件info.txt
fwrite($file,$info); //写入信息到info.txt
fclose($file); //关闭文件info.txt
?>
————————————————————-
用以上的方法,就可以把不同用户的phpinfo信息保存下来,这在以前恐怕没有办法办到!其实上
面就是将一些“过程”转化为“函数”的方法!
或许有人会问:“难道就这个样子吗?还有没有其他用途?”当然有了,比如笔者论坛的PHP 语
法加亮显示就和这个有关(PHP默认的语法加亮显示函数会直接输出,不能保存结果,如果在每次
调用都显示恐怕会很浪费CPU,笔者的论坛就把语法加亮函数显示的结果用控制缓冲区的方法保留
了),大家如果感兴趣的话可以来看看http://www.zphp.com/bbs/!
————————————————————————————-
———————————
可能现在大家对ob_start()的功能有了一定的了解,上面的一个例子看似简单,但实际上已经掌
握了使用ob_start()的要点。
<1>.使用ob_start打开browser的cache,这样可以保证cache的内容在你调用flush
(),ob_end_flush()(或程序执行完毕)之前不会被输出。
<2>.现在的你应该知道你所拥有的优势:可以在任何输出内容后面使用header,setcookie以及
session,这是ob_start一个很大的特点;也可以使用ob_start的参数,在cache被写入后,然后
自动运行命令,比如ob_start(“ob_gzhandler”);而我们最常用的做法是用ob_get_contents()得
到cache中的内容,然后再进行处理……
<3>.当处理完毕后,我们可以使用各种方法输出,flush(),ob_end_flush(),以及等到程序执行完
毕后的自动输出。当然,如果你用的是ob_get_contents(),那么就要你自己控制输出方式了。
来,让我们看看能用ob系列函数做些什么……
一、 静态模版技术
简介:所谓静态模版技术就是通过某种方式,使得用户在client端得到的是由PHP产生的html页
面。如果这个html页面不会再被更新,那么当另外的用户再次浏览此页面时,程序将不会再调用
PHP以及相关的数据库,对于某些信息量比较大的网站,例如sina,163,sohu。类似这种的技术带
来的好处是非常巨大的。
我所知道的实现静态输出的有两种办法:
<1>.通过y10k修改的phplib的一个叫template.inc.php类实现。
<2>.使用ob系列函数实现。
对于第一种方法,因为不是这篇文章所要研究的问题,所以不再赘述。
我们现在来看一看第二种方法的具体实现:
Example 4.
————————————————————————————-
———————————
ob_start();//打开缓冲区
?>
php页面的全部输出
$content = ob_get_contents();//取得php页面输出的全部内容
$fp = fopen(“output00001.html”, “w”); //创建一个文件,并打开,准备写入
fwrite($fp, $content); //把php页面的内容全部写入output00001.html,然后……
fclose($fp);
?>
这样,所谓的静态模版就很容易的被实现了……
<?php
// ————————————————————————–
// 文件名 : index.php
// ————————————————————————–
// 缓存文件名和缓存时间
$cachefilename = ‘./cache/index.cache‘;
$cachetime = 3600;
// 强制更新缓存
if ( $_GET['c'] )
{
echo CacheFile();
die();
}
// 检测缓存是否存在
if ( file_exists( $cachefilename ) )
{
$lastmodifytime = filemtime( $cachefilename );
if ( $lastmodifytime && ( time() - $lastmodifytime ) > $cachetime )
{
echo CacheFile();
}
else
{
echo ReadCache();
}
}
else
{
echo CacheFile();
}

//生成HTML并缓存成文件
function CacheFile()
{
global $cachefilename;
// 打开输出缓存
ob_start();
//这里开始链接数据库,查询,用ADODB+SMARTY技术。
$tpl->Display( “index.html“ );
//处理完成,截获缓冲内容

//得到缓存内容
$content=ob_get_contents();
//清空缓冲区,否则最终还是会输出给浏览器,这样就会有两个首页了
ob_end_clean();
//写入文件,若不可写则返回缓存
if(is_writable($cachefilename))
{
$handle = fopen($cachefilename,“w“);
fwrite($handle,$content);
fclose($handle);
}
else
{
return ReadCache().“ outdated“;
}
return $content.‘newcache‘;
}
//读取缓存文件
function ReadCache()
{
global $cachefilename;
$handle=fopen($cachefilename,“r“);
$content=”;
while (!feof($handle))
{
$line = fgets($handle);
$content.=$line;
}
fclose($handle);
return $content.‘cached at ‘.date(“Y-m-d H:i:s“,filemtime($cachefilename));
}
八
30
八
29
我们经常讨论的几个问题是:(做外贸离不开这几个问题)
1, 怎么找客户。
2, 怎么找工厂
3, 怎么和维护客户
4, 怎么和工厂打交道
比如经常在这个论坛上看到这个问题,我现在该不该做SOHO,其实答案很简单,下面3个条件请你满足2个,A,有客户。B,有长久能合作的工厂。C,有好的代理(货贷,出口。。)就这3个条件,当然,丰富的外贸经验就不说了。
(一)怎么找客户?
找客户的方法许多,但是个人意见就归纳为3个来源,A,展会。B,付费和免费B2B。C,国际搜索引擎。
根据自己条件,条件好了,直接展会,这个客户来的最快,效果也好。B2B也不错,不然ALIBABA和MIC为什么那么好,
搜索引擎也有效果,他早于B2B,但是这个是要坚持的,没有其他方法。
请大家根据自身条件,找出自己有用的方法,大多数人都喜欢展会,但是我自己很喜欢搜索引擎,自己有时间了就去摸索这个了。因为一开始做外贸我就一个想法,自己在网上找到客户了,那才是自己真能力的体现。
(二)怎么找工厂?
很多人说,找一个好点的工厂比客户都难。其实请大家对位入坐,大的厂很少会和SOHO合作的,比如我,我就找小点的厂,他门会拿你当回事的,他们在发展,我们自己也在发展。
重要一点是你和工厂打交道的过程中,请你一定要专业,了解产品知识,这里有许多在工厂上班的,他们经常面对外贸公司的寻价,外贸公司就问这个什么价格,许多人一看都不想报价格,因为你没有把你需要的产品参数,资料给工厂说清楚,人家当然不愿意答复你,这就是我经常说的换位思考。许多工厂也是愿意做内销的,他们开厂的,有利润都会做的,就看你怎么和他们沟通了。
(三)怎么维护客户和怎么和工厂打交道?
其实很简单,就2个字——利益
我们是商人,老外没有利润他不会和你做,工厂没有利润,他不会和你合作。当然我们没有利益,我们也不愿意去做。
其实我们和工厂和客户交流就是一个想法,那就是都在追求利润最大,从利益2字出发,很多事情就容易解决了,没有那么多烦恼了,比如许多人问,这点利润该不该接这个单子,利润最大话的话,那就接,没有什么好犹豫的。
以上4个问题,是别人经常会问我的。大家也可以看到答案也很简单,其实没有那么难,老人经常说,最事要做最坏打算,但是我这个人喜欢做最好打算,这样做事情我才能放手去做,做的不好最多就是亏点钱,这没有什么,毕竟我们年轻,大不了重头在来。
我经常在群里和一些SOHO的人交流,学习了许多,对外贸有了更好的认识。
我现在不把自己当SOHO,我去年6月开始做,到现在1年2个月了,现在刚刚把租的办公室装修好,今年年底过完年,就打算招聘3个业务员,(因为下半年个人的事情比较多),在投入个平台,往大里发展下。这样来自己的生活和上下班也规律下,不然真的要和社会脱节了,天天上班,吃饭,生活在一个房间里真的是郁闷,SOHO都有这个苦恼吧,哈哈。
做了这么长时间,说句心里话,自己在各方面感觉欠缺的人,就好好的上班,别听论坛里几个人吓忽悠。现在外贸确实不好做了。