八月, 2009

小成功靠智力,大成功靠耐力

  成功是每个人的目标追求。人生如何才能成就一番事业呢?聪明的人往往不务实,务实的人往往不聪明;有悟性的人工作没有耐性,有耐性的人工作却没有悟性。获取成功既需要有悟性,又需要有耐性。有悟才能做得好,有耐性才能做得久,可惜这样的人才太少了。
  为什么会发生这种现象呢?因为太聪明的人悟性高、适应能力强,在工作中选择的机会太多,所以这种人工作往往在一个行业,一家企业干不长、呆不久。即使在一行业做,一家企业做,他们也不会很用心。因为他不需要怎么努力就能做好,所以往往不勤劳。这是人性的弱点。要知道一个人不管你有多聪明,如果你不愿意在一个行业内或企业内呆上十年八年,那么很难成为这个行业的专家。如果你不能成为这个行业的专家,那么也不会成为这个行业的赢家。另外一种人,他们很务实、有耐心,愿意学习、愿意成长,也肯吃苦耐劳,可悟性太低、成长太慢。也许竞争还没有开始,他们就被淘汰出局了。因此,成功既需要智力,又需要耐力。小成功靠智力,大成功靠耐力。
  一个人成功一次也许比较容易,而成功一生太难。因为小成功靠投机,大成功靠投资。所以很多人专注投机,不愿意投资。特别那些悟性比较好的人才,他们更不愿意花精力和时间做长线的投资,结果导致企业的短命。因为投机的回报高,钱来得快,赚钱轻松,而投资复杂,风险大,回报慢,时间长,所以很多人没有耐心等待。为什么中国小企业多,大企业少?多数企业都是短视行为。他们只在乎眼前的利润,不愿意做长远的投入。他们宁可花时间和精力选新行业,找新项目,新产品,也不愿意集中财力,物力和人力把原有的企业做强做大。
  因为每个行业到了成熟阶段就会出现激烈的市场竞争,消费者对产品的要求会越来越高,服务越越越多,相反,利润会越来越低,所以很多投机性的企业就无法适应客户的需求。他们不是在努力提升自己的产品和服务,而是如何赚点钱转行转项。虽然表面上看这种企业赚钱了,实际上这种企业亏本了。因为多数企业老板不会算无形资产。所以巨大的经济损失他们看不到。
  企业的成功都是来自于长时间的积累,一家企业也许第一年不赚钱,第二年不赚钱,第三年仍不赚钱,到了第四年,也许一年赚得钱比前三年的总和还要多,可惜很多有“智力”的企业老板却放弃了。他们等不到第四年的成功到来。
  不仅企业如此,个人也是一样,有的人在一个行业呆了三年,五年都没有什么起色,到第八年以后,一下子暴发了,然而往往聪明的人坚持不下去了。因为聪明人不愿意等待,等待意味着机遇和风险。所以当外界诱惑大于内在的风险时,很多聪明的人就选择了放弃。结果第八年成功降临时,那些没有转行的人反而获取了成功。
  为什么我们前面拼命努力不赚钱,而后面一年会赚回那么多的钱呢?因为成功是需要积累的,前期的坚持虽然表面上看不到收获,但是实际上你已经积累了大量的无形财富,而这些客户一直都在徘徊,观望,等待,当你能力积累、经验积累、信誉积累、信息积累、客户积累到一定阶段时就会一下子暴发出来。十年寒窗无人问,一举成名天下知。小沈阳一夜走红,大家可知他背后坚持了多少夜,多少年呢?
  也许这些道理说起来简单,做起来不容易啊!特别是当很多人都开始放弃的时候,你就会不断地怀疑自己,丧失信心。一旦失去信念,那么再好的能力也无法发挥了。因此,成功者往往是大智若愚,他们多数是逆向思维。当所有的人都放弃的时候他们依然坚持到底。最后获取巨大的成功。
  看看世界的名牌企业嘛。为什么一个品牌的价值高达几百亿元呢?因为品牌代表了质量,品牌代表了信誉,品牌代表了地位,品牌代表了行业。所以企业家一定要耐心经营。如果我们不能在一行业内做到顶尖,做到专业,那么品牌能够积累如此好高的价值吗?然而,多数企业的老板只相信看得见的资产,不重视看不见的财富,这是多大的经济损失?

史玉柱经典语录

1.90%的困难你现在想都没有想到,你都不知道那是困难。
2。团队核心成员有人要提出辞职时,不要挽留,既然提出了,他迟早是要走的。
3。如果没有价格上的优势与技术上的绝对优势,千万不要进入红海市场,否则你会必输无疑!
4。做连锁经营业务,一定要做一套傻瓜版的营销手册与管理手册,只有这样,才能实现远距离的管理。
5。做成功一个店之后离你大的成功就不远了,所以你首先就是脚踏实地、集中精力地先做出一家,也是要放弃掉连锁的这种,不要在将来如何做连锁方面做太多的梦,先脚踏实地做出第一家。
6。做全国性市场,一定要先做一个试销市场,要一点点来,快不得;做成了,真到做全国市场时,要快半步,慢不得!
7。初中水平跟博士后没啥区别。只要能干就行,我一直是这个观点,不在乎学历,只要能干能做出贡献就行。
8。作为我们曾经失败过,至少有过失败经历的人,应该经常从里面学点东西。人在成功的时候是学不到东西的,人在顺境的时候,在成功的时候,沉不下心来,总结的东西自然是很虚的东西。只有失败的时候,总结的教训才是深刻的,才是真的。
9.对过去成功的经验再好好总结总结,尤其是对失败的教训,下半夜夜深人静的时候你仔细想一想。反正睡觉也想,想一想实际上对你有很大收获比你看书更有用。因为有的书离你远,那是看自己过去写的东西。
10。最痛苦的时候,压力最大的时候,脑子里面只有一件事儿的时候,我把全国分公司经理招到荒山脚下北大门那个地方,招待所里面,然后在那个地方闭门开批判会。大家批判我,批判了三天三夜,我觉得那个就很有用。
11。要改变消费者固有的想法,比登太阳还难;但不是不可能的。
12。现在的时代,战略正确之后细节决定因素,有很多细节处理不好,你的战略正确了也会失败。
13。不要只看塔尖,二三线市场比一线的更大。
14。管理无情,人有情。
15。所谓人才,就是你交给他一件事情,他做成了;你再交给他一件事情,他又做成了。

浙江大学郑强教授语录

1.我们漠视历史的价值,总以为楼宇越新越好,但你到法国市中心看看,几乎没有什么新建筑,他们以历史积淀为自豪,而我们以不断地拆楼建楼来折腾自己
2.教育的本职不是谋生,而是唤起兴趣,鼓舞精神。靠教育来谋生和发达也是可以的,却被我们过度重视了。
3.日本人宁愿喜欢黑人,也不喜欢我们,因为现在的中国人没有了精神。
4.大家都在嘲笑俄罗斯,但我知道俄罗斯将来一定会发达,因为那里的人2天没吃饭了饿着肚子还排队,而我们有2个人也要挤的不可开交。
5.日本人侵犯我们,因为我们出了很多汉奸。将来日本人侵犯我们,还会不会有汉奸?谁将是未来中国的汉奸?在座的诸位很大一部分都将是。因为你们嘲笑爱国者,崇拜权势和金钱,鄙夷理想和志气。
6.谁现在就是汉奸?北大清华的学生,因为用他们学习的知识帮外国人开拓市场,打败我们中国的企业。
7.将来中国即使发达了,但你看看那些开着豪华车的富翁们从车窗外向外吐痰、扔垃圾。你就知道,如果没有教育,中国再富裕也不会强大。
8.读书是为了承担责任。但现在的教育让女人承担了太多责任,让男人逃避了太多责任。
9.人类历史,实际就是一连串冲动。所以大家不要鄙视冲动,因为冲动都是可爱地。
10.中国的篮球不缺乏技术,不缺乏金钱,但他们缺乏责任感,哪怕是对消费者的责任感。
11.会唱歌的人用气息发音,所以不累。当我看到你们说话时喉头是动的,我就知道你唱歌肯定不好。
12.未来20年,中国人崇拜的将是知识而不是官员。这一点我们应该向日本学习,这个民族对知识的尊重,无以复加。但现在在中国有点钱的人,有点小权的人--哪怕是个科长,也可以照样吧大学教授弄得没有尊严。这种貌似聪明的聪明,洋洋自得的市侩,是多么肤浅啊。
13.一个男人,只可以给自己的父母和妻子下跪,只可以对自己的老师鞠躬,绝对不应当对权贵与金钱低头。但如今,大多数人正好反了。
14.日本人为什么不道歉,日本总统为什么不谢罪?因为他们知道,日本人的尊严和历史最重要,相反其它亚洲的不满太没有分量,所以他们可以置之不理。
15.教育应该让中国懂得自尊。但是现在我们看到外国人就低头,女生看到外国垃圾一般的男人都想讨好。同志们,在外国人面前我们多么地没有尊严。在留学的日本东京大学的人当中,我是唯一回来的,但日本人反而敬重我,因为我活得有灵魂,活得有骨气。

PHP 数组 详解

PHP数组是一个重要的概念,它包含有大量的函数,方便人们的开发…现将它的数组分类,以方便查询及应用.
先说说PHP数组的定义…PHP数组包含两个项,key和value,可以通过key来获取相应的value,其中key又可以是数值和关联的,如$array[0],$array[one]…
创建数组
PHP中的数组声明跟其它语言的也有点小小的差别,但一样可以声明为一维,两维,三维及多维等,如
$array[0] = 1,$array = array(1,2,3); 一维数组,只包括三个值,属于数值型数组,引用时可用$array[0]来代表1,创建数值数组时可以省略索引.
$array = array(
   1 => “one”,
   2 => “two”,
   3 => “three”,
   4 => array(
    “one” => 1,
    “two” => 2,
    “three” => 3
   )
);
二维数组,同时又是关联数组,引用时可以$array[4][“one”]来代表1.
三维以上依此类推…
如果要批量创建数组,则可以通过下面这个函数:
array range ( mixed low, mixed high [, number step] )
如$array = range(1,6);代表array(1,2,3,4,5,6);
   $array = range(a,f); 代表 array(a,b,c,d,e,f);

输出数组
PHP中输出数组的函数有比较多,常用的有
bool print_r ( mixed expression [, bool return] )
void var_dump ( mixed expression [, mixed expression [, ...]] )
还有像echo,print,printf都可以输出单个数组.

测试数组
有时我们需要判定一个变量是否为数组,则可以使用:
bool is_array ( mixed var )

增加或删除数组元素
数组声明后并不是一成不变的,可能通过对数组的增加删除来进行深入的操作:
int array_push ( array &array, mixed var [, mixed ...] ) 将一个或多个单元压入数组的末尾,数组的长度根据入栈变量的数目增加,如array_push($array,$var)
mixed array_pop ( array &array ) 将数组的最后一个元素弹出(出栈),并在结束后重置数组的指针
mixed array_shift ( array &array ) 返回数组的第一个元素.
int array_unshift ( array &array, mixed var [, mixed ...] ) 在数组的开头插入一个或多个单元
array array_pad ( array input, int pad_size, mixed pad_value ) 用值将数组填补到指定的长度,如array_pad($array,3,$var);

定位数组元素
bool in_array ( mixed needle, array haystack [, bool strict] ) 检查数组中是否存在某个值
array array_keys ( array input [, mixed search_value [, bool strict]] ) 返回数组中的所有键名,重组成一个新数组
bool array_key_exists ( mixed key, array search ) 检查给定的key是否存在于数组中.
array array_values ( array input ) 返回数组中所有的值
mixed array_search ( mixed needle, array haystack [, bool strict] ) 在数组中搜索给定的值,成功则返回key.

遍历数组
PHP中提供了很多获取key和value的函数
mixed key ( array &array ) 从关联数组中取得键名
mixed reset ( array &array ) 将数组指针重置
array each ( array &array ) 返回数组中的键/值对并将数组向前移一步
mixed current ( array &array ) 返回数组中的当前单元
mixed end ( array &array ) 将数组中的指针移向最后一位
mixed next ( array &array ) 将数组中的指针移向下一位
mixed prev ( array &array ) 将数组中的指针移向上一位
array array_reverse ( array array [, bool preserve_keys] ) 返回一个单元顺序相反的数组
array array_flip ( array trans ) 将数组中的键值角色调换
除了上面的函数外还可以使用循环来对数组中的元素进行遍历,如
foreach (array_expr as $value)
{ statement    }
foreach (array_expr as $key=>$value)
{ statement   }
提取每个键/值对,直到获得所有项或满足某些内部条件为止
void list ( mixed varname, mixed … ) 把数组中的值赋给一些变量

确定数组大小和唯一性
int count ( mixed var [, int mode] ) 计算数组中单元数组或对象中属性的个数, sizeof 的同名函数
array array_count_values ( array input ) 统计数组中所有值出现的次数
array array_unique ( array array ) 移除数组中重复的值

数组排序
这个听说是计算器的核心问题…呵呵…事实也是这样…
bool sort ( array &array [, int sort_flags] ) 对数组进行排序
bool natsort ( array &array ) 用自然排序法对数组进行排序
bool natcasesort ( array &array ) 用自然排序法对数组进行排序,不区分大小写
bool rsort ( array &array [, int sort_flags] ) 对数组进行逆向排序
bool asort ( array &array [, int sort_flags] ) 对数组进行排序并保持索引关系
bool array_multisort ( array ar1 [, mixed arg [, mixed ... [, array ...]]] ) 对多个数组或多维数组进行排序
bool arsort ( array &array [, int sort_flags] ) 对数组进行逆序排序并保持索引关系
bool ksort ( array &array [, int sort_flags] ) 对数组按键名排序
bool krsort ( array &array [, int sort_flags] ) 对数组按键名逆序排序

合并,拆分,接合和分解数组
array array_combine ( array keys, array values ) 创建一个数组,一个数组的值作为其键名,另一个数组的值作为其值
array array_merge ( array array1 [, array array2 [, array ...]] ) 合并一个或多个数组
array array_merge_recursive ( array array1 [, array ...] ) 递归地全部一个或多个数组
array array_slice ( array array, int offset [, int length [, bool preserve_keys]] ) 从数组中取出一段,建立一个新的数组,如果offset为正数,拆分从距数组开关的offset位置开始,如果为负数,则拆分从距数组末尾的offset位置开始,此时距数组开关的count(input_array)-|length|位置结束
array array_splice ( array &input, int offset [, int length [, array replacement]] ) 把数组中的部分值去掉,并用其它值替代.offset设置同上
array array_intersect ( array array1, array array2 [, array ...] ) 计算数组的交集,即是说如果第一个数组中出现过的值在接下来的几个数组中都有出现,则取出该值
array array_intersect_assoc ( array array1, array array2 [, array ...] ) 带索引检查数组中的交集
array array_intersect_key ( array array1, array array2 [, array ...] ) 使用键名比较数组中的交集
array array_diff ( array array1, array array2 [, array ...] ) 计算数组的差集, 即是说跟第一个数组中不同的值
array array_diff_assoc ( array array1, array array2 [, array ...] ) 带索引检查数组中的差集
array array_diff_key ( array array1, array array2 [, array ...] ) 使用键名比较数组中的差集

其它比较有用的数组函数
数组函数还有好多没有列出来…再上几个比较有用也比较常的,其它的就参考手册啦…手册里很清楚
mixed array_rand ( array input [, int num_req] ) 数组中随机取出一个或多个键,num指定个数
bool shuffle ( array &array ) 将数组打乱
number array_sum ( array array ) 计算数组中所有值的总和,关联数组忽略
array array_chunk ( array input, int size [, bool preserve_keys] ) 将一个数组分割成几个

php索引以0开始
$a=array(0=>”a”,1=>”b”);
$a=array(“a”=>”A”,”b”=>”B”);
调用:$a["a"]

多维数组:$a=array(“a”=>array(“a1″=>”A1″,”a2″=>”A2″))

输出数组
boolean print_r(var)

创建数组
1.array $a=array(“a”,”b”);
2.list
    $line=”a|b|c”;
    list($a,$b,$c)=explode(“|”,$line);
3.array range(low,high,step)
    $a=range(0,6) <==> $a=(0,1,2,3,4,5,6);
    $a=range(0,6,2) <==> $a=(0,2,4,6)

测试数组
boolean is_array(arr)

增加或删除数组元素
1.$arrayname[]
2.int array_push(tar,var) 把var放到数组tar的末尾
3.mixed array_pop(tar) 返回并删除数组tar的最后一个元素
4.mixed array_shift(tar) 返回并删除数组tar的第一个元素
5.int array_shift(tar,var) 将var增加到数组tar的最前面
6.array array_pad(tar,legth,pad) 更改数组tar,将其大小更改为legth,并且向右添加值为pad.如果当前大小小于或等于legth则不作任何操作。

定位数组元素
1.boolean in_array(needle,haystack[,strict]) 返回键needle是否在haystak中
2.array array_key(tar [,search_value]) 返回一个由数组tar中所有键组成的数组
3.boolean array_key_exists(key,tar) 如果数组tar存在键key返回true
4.array array_values(tar) 返回一个包含数组tar所有值得数组
5.miexd array_search(needle,hastack [,strict]) 返回值needl是否在hastack中存在

遍历数组
1.key() 取元素的键名
2.mixed reset(arr) 将数组arr的指针指向第一个元素
3.array each(arr) 返回数组arr中的当前键/值,并把指针移到下一个元素
4.mixed current(arr) 返回数组arr中的当前键/值
5.mixed end(arr) 把数组arr的指针指向最后一个元素,并返回最后一个元素
6.mixed next(arr) 把数组arr的指针指向下一个元素
7.mixed prev(tar) 将数组tar中的指针指向前一个元素,并返回这个元素
8.boolean array_walk(arr,cb,userdata) 将数组arr一次传递到自定义函数cb中
9.array array_reverse(arr,keys) 把数组arr中的值逆序排列
10.array array_flip(arr) 将数组tar中的键/值倒置

确定数组大小和唯一性
1.integer const(arr[,mode]) 返回数组arr的值总数。如果mode=1则可返回多维数组的值总数
2.array array_count_values(arr) 返回数组arr中的值的出现频率
3.array array_unique(arr) 删除数组arr中的重复值

数组排序
1.void sort(arr [,flag]) 对数组arr进行升序排序。注:排序后键/值不再对应
2.void natsort(arr) p1,p10,p2,p3 >>> p1,p2,p3,p10
3.void natcasesort(arr) 同natsort,但这个不区分大小写
4.void rsort(arr [,flag]) 同sort,这个降序排列。
5.void asort(arr [,flag]) 同sort,只是这个键/值对应
6.boolean array_multisort(arr,arg…) 同时对多个键/值进行排序
7.void arsort(arr [,flag]) 同rsort,但这个键/值对应
8.integer ksort(arr [,flag]) 按数组arr键进行升序排序
9.integer krsort(arr [,flag]) 按数组arr键进行降序排序
10.void usort(arr,cb) 按自定义函数cb的规则对arr排序

合并、拆分、接合、分解数组
1.array array_combine(keys,values) 使用两个数组的值,组成一个键/值对应的数组
2.array array_merge(arr,arr…..) 合并多个数组,对相同的键值进行覆盖
3.array array_merge_recursive(arr,arr…) 合并多个数组,对相同的键生成一个子数组
4.array array_slice(arr,offset [,length]) 返回一个在数组arr中指定部分的数组
5.array array_splice(input,offset,length,repl) 删除数组中指定的部分,并返回删除的部分
6.array array_intersect(arr,arr…) 返回多个数组中都存在的值
7.array array_intersect_assoc(arr,arr…) 返回多个数组中都存在的键/值
8.array array_diff(arr1,arr2…) 返回在数组arr1中存在,在其他数组中不存在的值
9.array array_diff_assoc(arr1,arr2…) 返回在数组arr1中存在,在其他数组中不存在的键/值

其他函数
1.mixed array_rand(arr[,num]) 随机返回一个数组arr中的键/值
2.void shuffle(arr) 把数组arr中的内容重新打乱
3.mixed array_sum(arr) 返回数组arr中所有值得累加值
4.array array_chunk(arr,size,key) 把数组arr分解成一个多维数组

wp_tag_cloud函数使用说明

描述
wordpress 2.3版或以上可用。wp_tag_cloud这个模板标签将显示一列标签,即所谓的标签云图,标签使用的次数决定了它的尺寸。
用法
<?php wp_tag_cloud(”); ?>
例子
默认值
$defaults = array(‘smallest‘ => 8, ‘largest‘ => 22,
  ‘unit‘ => ‘pt‘, ‘number‘ => 45, ‘format‘ => ‘flat‘,
  ‘orderby‘ => ‘name‘, ‘order‘ => ‘ASC‘,‘exclude‘ => , ‘include‘ => );
默认显示:
smallest – 使用最少的标签的字号为8
largest – 使用最多的标签的字号为22
unit – 使用’pt’(点)作为最小和最大字号的单位
number – 显示最多45个标签
format – 使用平面风格显示标签(标签之间用空格分隔)
orderby – 以名称排序
order – 升序显示
exclude – 不排除任何标签
include – 包含任何标签
在“热门标签”下显示云图
<?php if ( function_exists(‘wp_tag_cloud‘) ) : ?>
<li>
<h2>Popular Tags</h2>
<ul>
<?php wp_tag_cloud(‘smallest=8&largest=22‘); ?>
</ul>
</li>
<?php endif; ?>
云图减少显示的个数和用使用次数代替名称排序
<?php wp_tag_cloud(‘smallest=8&largest=22&number=30&orderby=count‘); ?>
参数
smallest
(整数) 使用最少的标签的字号 (单位由unit参数给出).
largest
(整数) 使用最多的标签的字号 (单位由unit参数给出).
unit
(字符) 标签字号的单位。 他可以是任何CSS长度单位, 例如: pt, px, em, %; 默认为pt (点).
number
(整数) 云图显示标签的个数。 (使用“0”将显示所有标签。)
format
(字符) 云图显示的格式。
‘flat’ (默认)标签用空格分隔
‘list’ 标签置于一个类名为wp-tag-cloud的无序列表中
‘array’ 标签保存在数值中
orderby
(字符) 标签的排序,有效值为:
‘name’ (默认,名称)
‘count’ 使用次数
order
(字符) 排序次序。有效值 – 必须大写:
‘ASC’ (默认值,升序)
‘DESC’ (降序)
exclude
(字符) 排除用逗号(半角)分隔的一列标签(term_id)。例如, ‘exclude=5,27′ 意味着term_id为5或27的标签将不会显示。默认不排除如何标签。
include
(字符) 包含用逗号(半角)分隔的一列标签。例如,’include=5,27′意味着只有term_id为5或者27的标签将显示。默认包含如何标签。
创建标签档案文件
2.3版本的重要特点是添加了标签功能,wp_tag_cloud标签可以用于显示一个标签存档。这也意味着访问者点击标签云图中的某个标签,他可以得到所有使用了这个标签的文章。根据Template_Hierarchy,如果tag.php模版不存在时,将使用archives.php模版。通过使用tag.php模版,你可以定制你的标签存档的样式,此模版在最上面包含了标签云图,起到了导航的作用。
要把这个弄成一个新的模板的话,需要把这个加入到主题文件中去。(Template_Hierarchy里有关于模版的资源。)需要的步骤如下:
1.将下面的内容保存到tag.php中。
2.将该文件上传到主题文件夹中。
3.当你希望在导航栏有个链接可到达标签存档中时,否则它只在点击某个标签后使用:增加一个使用tag.php的空白页面,并给它起名为标签存档。
第三步的详细说明
WordPress可以设置成不同的页面使用不同的页面模板。在管理面板“写作->页面”的底部(或在边栏,取决于你使用的wordpress版本)有个名为“Page Template(页面模板)”的下拉菜单。在那里,你可以选择使用哪个模板显示这个页面。
<?php /*
Template Name: Tag Archive
*/ ?>
<div>
<?php get_header(); ?>
<h2>Tag Archive</h2>
<?php wp_tag_cloud(”); ?>
    <div class=”navigation”>
<div class=”alignleft”><?php next_posts_link(‘« Older Entries‘) ?></div>
<div class=”alignright”><?php previous_posts_link(‘Newer Entries »‘) ?></div>
    </div>
<?php if (have_posts()) : ?>
        <?php while (have_posts()) : the_post(); ?>
        <h2><a href=”<?php the_permalink() ?>” rel=”bookmark” title=”Permanent Link to <?php the_title(); ?>“><?php the_title(); ?></a></h2>
    <div class=”entry”>
    <?php the_content(‘Read the rest of this entry »‘); ?>
    </div>
 
    <?php endwhile; ?>
    <?php endif; ?>
</div>
<?php get_footer(); ?>
请注意,这个模板没有添加任何样式,查看single.php可以得知确定的样式。