Re: [分享] 使用單引號或雙引號

看板PHP作者 (ChrisLiu)時間12年前 (2012/01/11 22:26), 編輯推噓4(401)
留言5則, 5人參與, 最新討論串3/3 (看更多)
測試環境 OS: Debian wheezy/sid 32bit CPU: P4 2.66 RAM: DDR400-3G PHP 5.5.0-dev (cli) (built: Dec 7 2011 18:01:26) Copyright (c) 1997-2011 The PHP Group Zend Engine v2.4.0, Copyright (c) 1998-2011 Zend Technologies 首先產生 $array[$i] = rand(1, 10); $i=0~$i=9999 然後分別用 foreach 跑下列五種 $test['value'] = $value; $test["value"] = $value; $test['value'.$value] = $value; $test["value".$value] = $value; $test["value{$value}"] = $value; 結果分別為 0.0030241012573242 0.0029821395874023 0.009270191192627 0.0089008808135986 0.0031299591064453 單位:秒 在另外一台 PHP 5.2.6-1+lenny9 with Suhosin-Patch 0.9.6.2 (cli) (built: Aug 4 2010 03:25:57) Copyright (c) 1997-2008 The PHP Group Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies 0.003613 0.003465 0.006990 0.006933 0.003652 在另外一台 PHP 5.3.3 (cli) (built: Mar 30 2011 13:51:41) Copyright (c) 1997-2010 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies 0.0026431083679199 0.0028738975524902 0.0065069198608398 0.0065040588378906 0.002842903137207 在另外一台 PHP 5.1.6 (cli) (built: Jul 31 2008 00:08:07) Copyright (c) 1997-2006 The PHP Group Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies 0.017944097518921 0.0079720020294189 0.022947072982788 0.02289605140686 0.0089378356933594 結論 除了 5.3.3 那台很微妙之外,前兩個結果顛倒… 1. 雙引號速度真的大於單引號 2. 單雙引號字串用 . 相加幾乎一樣 3. 雙引號中變數替換速度大於字串相加 4. 我的機器中 PHP 5.3.3 那台最好,5.1.6 這台最爛(無誤 我手邊找不到更舊的 php 版本的機器了… 以上 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.85.64.11

01/11 23:27, , 1F
哇,一直以來觀念都錯了OTZ..
01/11 23:27, 1F

01/11 23:29, , 2F
字串銜接不意外,但是 " 快於 ' 就真的是很奇妙了~
01/11 23:29, 2F

01/12 00:12, , 3F
這麼多台…你是機器人嗎XDDDDDD
01/12 00:12, 3F

01/12 09:26, , 4F
好棒的驗證文
01/12 09:26, 4F

07/23 02:18, , 5F
這篇有誤.. 單引號較快 你測試code可能沒寫好有瑕疵
07/23 02:18, 5F
文章代碼(AID): #1F3PmSlo (PHP)
文章代碼(AID): #1F3PmSlo (PHP)