Output Control 函数可以让你自由控制脚本中数据的输出。它非常地有用,特别是对于:当你想
在数据已经输出后,再输出文件头的情况。输出控制函数不对使用 header() 或 setcookie(),
发送的文件头信息产生影响,只对那些类似于 echo() 和 PHP 代码的数据块有作用。
我们先举一个简单的例子,让大家对Output Control有一个大致的印象:
Example 1.
ob_start(); //打开缓冲区
echo "Hello\n"; //输出
header(“location:index.php”); //把浏览器重定向到index.php
ob_end_flush();//输出全部内容到浏览器
?>
先展望php6(当然也可能是php5.2之类,暂未确定)
去掉的东西(感觉有必要提的)
2.1 register_globals
这个影响安全,又不好处理.
2.2 magic_quotes
这个本意很好,但反对的声音很多...
2.3 safe_mode
这个东西被E_CORE_ERROR代替了.
2.11 register_long_arrays, HTTP_*_VARS
这个东西影响速度
特别的
1. Unicode
这个东西好!不用再担心很多了.
3.1 XMLReader / XMLWriter in the distribution, on by default
以后处理rss之类的就更容易了
3.2 Move non-PDO DB extensions to PECL
下面特别讨论.
3.3 Move ereg to PECL
实际preg,ereg差不多.用两个等于浪费.
其余的参见(http://www.php.net/~derick/meeting-notes.html)
============================================
下面描述一下,在php6,没有mysql_*,我们怎么过.
首先要连接mysql数据库
$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass);
//如果你想连mssql:
//mssql:host=localhost;dbname=testdb
//连pgsql:
//pgsql:host=localhost port=5432 dbname=testdb user=bruce password=mypass
//连odbc(DSN)
//odbc:testdb
//连access:
//odbc:Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\\db.mdb;Uid=Admin
//还有oracle,sqlite,db2....
我要执行个查询
foreach ($dbh->query('SELECT * from FOO') as $row) {
print_r($row); //这个结果和mysql_fetch_array差不多。PDOStatement::setFetchMode 可以调整。
}
//现在多简单
另外还可以:
$sth = $dbh->prepare("SELECT name, colour FROM fruit");
$sth->execute();
/* Fetch all of the remaining rows in the result set */
print("Fetch all of the remaining rows in the result set:\n");
$result = $sth->fetchAll();
print_r($result);
得到:
Fetch all of the remaining rows in the result set:
Array
(
[0] => Array
(
[NAME] => pear
[0] => pear
[COLOUR] => green
[1] => green
)
[1] => Array
(
[NAME] => watermelon
[0] => watermelon
[COLOUR] => pink
[1] => pink
)
)
偶还想删/更新条数据。
$count = $dbh->exec("DELETE FROM fruit WHERE colour = 'red'");
//$count就是删除的条数。相当于mysql_affected_rows
//也可用PDOStatement::rowCount
偶忘了偶用啥数据库了。。。。
if ($db->getAttribute(PDO::ATTR_DRIVER_NAME) == 'mysql') {
echo "Running on mysql; doing something mysql specific here\n";
}
偶插入数据的时候要用mysql_escape_string.现在?
print "Unquoted string: $string\n";
print "Quoted string: " . $conn->quote($string) . "\n";
得到:
Unquoted string: Nice
Quoted string: 'Nice'
//你看现在连引号都自动加了。。。。
//注意在不同的数据库中结果不同,比如有的' => '',有的' => \',\ => \\
//现在没顾虑了,全自动。
//最后偶要关闭它了
$conn = null; //fcicq和这个数据库连接要说再见了。。。。
//但是!你可以:
$dbh = new PDO('odbc:SAMPLE', 'db2inst1', 'ibmdb2',
array(PDO_ATTR_PERSISTENT => true)); //保持连接
很简单的不是?
附:特别简单的特殊调用方法:
$stmt = $dbh->prepare("SELECT * FROM REGISTRY where name = ?");
if ($stmt->execute(array($_GET['name']))) { //你怕啥?自动quote!
while ($row = $stmt->fetch()) {
print_r($row);
}
}
也可以:
$stmt->bindParam(1, $id);
$stmt->bindParam(2, $_FILES['file']['type']);
$stmt->bindParam(3, $fp, PDO::PARAM_LOB);
这么好的功能,哪里可以找到?php5.1以上在扩展里,php5在pecl里,php4?你别想了,没有。
联系作者fcicq: fcicqbbs at gmail dot com.
如果有问题,或者错误,均可联系。呵呵。
版权声明:非代码部分(含部分注释)原创,所有代码的均摘自手册
最后一句:喜悦首发,严禁转帖
1994年10月魔岩文化同时出版发行三位中国歌手的个人专辑,
分别为窦唯的《黑梦》、张楚的《孤独的人是可耻的》以及何勇的《垃圾场》。
作为制作人和发行者 — 魔岩文化的张培仁将此三张专辑的同时推出标以“中国新音乐的春天”的口号。
当年12月17日晚上8点,窦唯、张楚、何勇以及作为嘉宾演出的唐朝乐队所参加的“摇滚中国乐势力”演唱会在香港红磡体育馆正式开演,这一演唱会被认为是中国摇滚乐黄金时代的旗帜,也是时至今日中国摇滚史上最具影响力的演唱会之一。从此,窦唯、何勇与张楚被并称以“魔岩三杰”,而这一套专辑也创造出百万销售奇迹(含盗版)。但此后不久,由于唱片公司的经济,乐手的商业运营,以及乐手的个人问题等种种原因,“魔岩三杰”先后脱离魔岩唱片。曾以“中国火”树起中国摇滚大旗的魔岩文化也从此销声匿迹。
2004年12月17日,“摇滚中国乐势力”演唱会十周年之日,何勇单人在三里屯的九霄俱乐部举行了一场纪念演唱会,而此前受邀的窦唯、张楚和唐朝乐队并未出席。
多年未能同台献唱的“魔岩三杰”张楚、何勇以及窦唯将再现香港红磡体育场演出的经典,他们将联手许巍、谢天笑、汪峰、唐朝、零点、姜昕、罗琦、二手玫瑰、瘦人、面孔以及伍佰、黄贯中等摇滚中坚,在7月20日至22日举行的“鄂尔多斯首届草原摇滚音乐节”上为歌迷带来摇滚盛宴。
1、If a method can be static, declare it static. Speed improvement is by a factor of 4.
1、如果一个函数可以声明为静态的,那么就用静态的,速度是改进的一个因素4.
2、# Avoid magic like __get, __set, __autoload
2、避免使用__get, __set, __autoload等魔术函数
3、require_once() is expensive
3、require_once()是相当昂贵的。
4、Use full paths in includes and requires, less time spent on resolving the OS paths.
4、用include和require时,尽量用全路径,可以减少花在解决OS路径的时间
正则表达式用于字符串处理、表单验证等场合,实用高效。现将一些常用的表达式收集于此,以备不时之需。文章转载自:http://www.phpchina.com/31423/viewspace_9417.html
匹配中文字符的正则表达式: [\u4e00-\u9fa5]
评注:匹配中文还真是个头疼的事,有了这个表达式就好办了
办公室冲突显然触动了人类情绪的死角,该不该道歉?要不要握手言合?都不是白纸黑字的规则或是记过革职的惩戒可以解决的…… 长时间共处一个办公室,就算面对着冷漠的机械生产线,人与人之间还是会因为升迁、考绩、沟通等等互动,而产生一些不愉快。生产的环境尚且如此,讲究创意与研发的单位,更加容易因为各自领域的坚持而多有碰撞。
开始工作时,我发现零星的冲突与偶尔的擦枪走火,在办公室里根本不是什么稀奇的画面,通常都是音调提高一点,讲不下去就立刻解散,顶多事后遇到“同阵营”的人,再大肆批评数落一番而已,大家顾及每天都得碰面,总要小心翼翼的不要把场面搞得太尴尬。
但是,有两个高级女主管可不这么忍气吞声的,每回一吵起架来,就成了当天办公室上演的特别节目。
两人都算是年资相当的员工,各自带领几个小兵成两组针锋相对的team,一旦有案子“轧”上了,两人也不管办公室众目睽睽,各据山头就嘶吼起来,什么情绪性的字眼、互揭疮疤的本事都使出来了,害得我们这些小角色们,只能低着头趴在桌上,生怕一个抬头偷窥,就要让流弹打得千疮百孔。
换了工作之后,办公室变成了阁子间的设计,不是传统企业那种“大通铺”的格局,所以冲突事件就只能是小规模的游击战。
但是有一回,倒让我大开眼界,一直到现在都百思不解。
冲突事件的两个主角:一个是博士、一个是硕士;一个是总经理、一个是副总;一个是空降部队、一个是苦守寒窑。
当时我的位子恰好在两人办公室的外侧走道上,先前只是从眼角的余光扫射到副总气呼呼绕过总经理秘书的座位,顾不得秘书的提醒,也顾不得总经理正在讲电话,相当愤怒地推开门,然后就听见两人在几坪大的空间里吼了起来。人一旦动了怒,EQ就瓦解了,不管是博士,还是硕士。我和座位附近的同事面面相觑,不晓得该不该冲进去劝架。突然,“砰”一声,一个拳头重重的敲在总经理高级的红木桌面上,副总撂下一句:“有本事你试试看!”然后出了总经理室的门,还刻意重重地把门摔上。
本来都趴在OA隔板上观战的脑袋,随着那一声“砰!”火速地恢复原状,生怕跟那位头部冒烟、一身怒火的副总四目相对,难保不被当场抓来揍一顿。
冲突容易,要收拾残局就没那么轻松了。有人吼过一两声就没事了,有人记恨一辈子也甭想善了,有人明明是阴险布局却没胆承认,有人阴错阳差因此而丢了工作。
办公室冲突显然触动了人类情绪的死角,该不该道歉?要不要握手言合?都不是白纸黑字的规则或是记过革职的惩戒可以解决的。即便是两个经历过严重冲突的人,为着五斗米也要强迫自己在冲突过后不可避免地相遇场合里,压抑着心头的不爽,然后皮笑肉不笑的在口头上委曲求全的互相尊称“XX兄,说得有道理!”这样的辛酸,看在其他人的眼中或许是一场玩笑,可是当事情发生在自己身上时,可真是冷暖自知了。
1、某一集说某个村子每天半夜三更都有怪叫声,把全村人吵醒,大家都不敢出去看
,战战兢兢地失眠到天亮。采访了一大堆上了岁数的村民,传说这里出没野兽,每天夜里
到村子作怪,闹得人心惶惶……音乐配的那叫一个恐怖!还TMD分上下两集渲染!到最后
竟然说那是村里一个胖子睡觉打呼噜!TNND这胖子是金刚罗汉转世,还是帕瓦罗蒂的私生
子?!打个呼噜能把一个村子的人吓醒?!K!我想砸电视!
2、还有一集说是一户人家老是发现自家客厅地上的瓷砖缝里会渗出像血一样的鲜红色液
体,弄得到处都是,全村的人都不知道是怎么回事,猜会不会原来这块地是坟地啊什么的
,然后又请了N多专家,研究他们家的地理位置地形条件,得出的结论都是依科学不可能
发生地下矿物质倒渗这种情况发生……所以,最后的结论就是:液体是这家人家为了出名
自己洒上去的!
我”咣垱“!一下倒地
今天看下日子才发现明天就是7号,又要高考了
不知道为什么,从我考完那年到现在每当高考的日子心里都是很激动,虽然它再和我没有什么关系!!
尽管不少人说高考又科举有舞弊这么不好那么不好,不过我倒觉得在我们国家一片和谐的现状,高考还算是最公平的选拔制度了
起码还没到泛滥的某些人一句话就可以决定一个人的一生,起码它可以大概的区分出学习的和不学习的,上过学的和没上学的,有脑子的和没脑子的,当然并不是没参加过高考就低人一等,高考只是一种人生的被动选择,将来还是要靠你自己去主动选择
02年我高考时基本上彻底晕菜,忘记那天的气温是多少了,听说那天还人工降雨来着!!但是忘了,都忘了!
往事不堪回首,为了让本来就已经乌七八糟的大学稍微在纯洁一点,为了大学中的流氓变态精神病的比例在少一点:
愿明天所有有能力的,有智商的,有人品的考生都能发挥出自己的水平,起码别晕
愿明天所有不学习的,整天扯的,缺心眼的能发挥出你们的那方面技能,当场被捕
2007-06-01 界面设计制作
2007-06-02 编写DIV和CSS
2007-06-03 建立数据库,编写程序!
2007-06-04 编写BLOG分类,BLOG显示!
2007-06-05 编写回复留言等功能,玩成部分AJAX体验功能!
2007-06-(06-07) 这两天有事儿,没有开发!
2007-06-08 完成友情链接,博客日历!
2007-06-10 开发基本完成!
2007-06-28 重写了一下UBB部分,还好现在日志不是很多!
2007-06-29 加入文件下载次数,加入模板管理功能
大体的样子就是这样了,不过还有一些细世的东西,需要完善[down]
上一页 1 ... 47 48 49 50