說是不起眼兒的小技巧,其實(shí)應(yīng)該說是不常用的常規(guī)應(yīng)用吧。很多事情就是這樣,知道是一馬事兒,會(huì)用是一馬事兒,精習(xí)又是另外一馬事兒。而成為高手更是需要扎實(shí)的基本功....
str_repeat
重復(fù)輸出字符串就靠它了,類似于perl里面的x
php -r 'echo str_repeat("ABC",5),"\n";'
ABCABCABCABCABC
substr
這個(gè)是用來(lái)截取字符器的,比如要截取字符串的第一個(gè)字母:
$string = 'abcdefg'
substr($string,0,1)就得到了a了。不過現(xiàn)在筆者已經(jīng)習(xí)慣用$string[0]了。順便說一下,當(dāng)判斷string的長(zhǎng)度是不是7的時(shí)候,現(xiàn)在改用了isset($string[6]),因?yàn)閾?jù)說isset比strlen速度快。同理,這個(gè)經(jīng)驗(yàn)也于適用于count的時(shí)候。
trim
trim這家伙是用來(lái)去首尾空白和尾部的換行的。用的時(shí)間長(zhǎng)了,以至于筆者為它就是專門干這個(gè)的。沒想它還可以接受一個(gè)參數(shù)列表,用來(lái)去除首尾不想用的字符,比如要去除'%abcdef%'的%
trim('%abcdef%','%')
continue
這個(gè)家伙是用來(lái)跳過后面的循環(huán)的.用得時(shí)間長(zhǎng)了,筆者一直以為它是沒有參數(shù)的,直到有一次筆者要跳出一個(gè)三層的循環(huán)...
ini_set
我們?cè)趯懟诰W(wǎng)絡(luò)連接的程序的時(shí)候,考慮到容錯(cuò)有必要設(shè)置一下socket超時(shí)時(shí)間.php.ini里定義的默認(rèn)時(shí)間是60秒。
; Default timeout for socket based streams (seconds)
; http://php.net/default-socket-timeout
default_socket_timeout = 60
php手冊(cè)里可以用ini_set修改php.ini的配置,于是想到了:
ini_set('default_socket_timeout',6);
筆者在使用一些新發(fā)現(xiàn)的函數(shù)的時(shí)候,習(xí)慣是:
var_dump(ini_set('default_socket_timeout',6));
一運(yùn)行結(jié)果提示:
string(2) "60"
咦?難道設(shè)置失???換了幾臺(tái)機(jī)器試還是這樣。哎,怎么辦呢?研究了半天終于發(fā)現(xiàn)一個(gè)問題,php手冊(cè)里是這么寫的:
Return Values
Returns the old value on success, FALSE on failure.
哎,看手冊(cè)太不細(xì)心了!
posix_kill
nginx的日志輪循腳本我是用php寫的,為了更php,通知nginx重新生成新的日志的時(shí)候我用了posix_kill:
posix_kill($nginx_pid,SIGUSR1)
在我用的N臺(tái)機(jī)器上,這個(gè)函數(shù)都是正常工作的??墒前堰@個(gè)腳本借給了一個(gè)哥們兒,它機(jī)器上竟然報(bào):
Warning: posix_kill() expects parameter 2 to be long, string given
看函數(shù)原形:bool posix_kill ( int $pid , int $sig )
第二個(gè)參數(shù)確實(shí)要給int.為啥SIGUSR1在我的機(jī)器上認(rèn)在哥們兒機(jī)器就不行了呢?php版本問題?哥們的php版本竟然比我的高!
如果想同時(shí)支持不同的系統(tǒng)怎么辦呢?加個(gè)判斷唄,php有個(gè)叫PHP_OS的神器。
以上就是分享的幾個(gè)小技巧,希望能夠幫到想要學(xué)習(xí)的你,有問題的請(qǐng)隨時(shí)聯(lián)系小編,我們共同探討,共同努力的學(xué)習(xí)。
免費(fèi)學(xué)習(xí)課堂
- 免費(fèi)推廣知識(shí)
- 競(jìng)價(jià)推廣知識(shí)
- 新媒體營(yíng)銷知識(shí)
- 網(wǎng)站運(yùn)營(yíng)知識(shí)
- 網(wǎng)站設(shè)計(jì)知識(shí)
- 網(wǎng)站建設(shè)知識(shí)
- Web前端知識(shí)
- 軟文營(yíng)銷知識(shí)
- 網(wǎng)站策劃知識(shí)
- 整合營(yíng)銷
推薦文章
- 織夢(mèng)dedecms漏洞修復(fù)大全含任意文件
- 整頓微信公眾號(hào)過度營(yíng)銷 對(duì)嚴(yán)重違
- SEO優(yōu)化過程要避免什么?
- 網(wǎng)站空間被掛馬的原因原因及解決
- 2016企業(yè)該如何運(yùn)用互聯(lián)網(wǎng)進(jìn)行營(yíng)銷
- WEB前端項(xiàng)目開發(fā)中需注意的細(xì)節(jié)
- 低價(jià)網(wǎng)站建設(shè)的危害有哪些?
- 如何詳細(xì)的分析你網(wǎng)站的競(jìng)爭(zhēng)對(duì)手
- 網(wǎng)站設(shè)計(jì)中四個(gè)常犯的錯(cuò)誤
- 如何搭配網(wǎng)站設(shè)計(jì)中的色彩?
告訴你幾個(gè)php幾個(gè)不起眼兒的小技巧
來(lái)源:北京匯仁智杰科技有限公司 時(shí)間:2016-04-09 點(diǎn)擊: 次
推薦文章
- 織夢(mèng)dedecms漏洞修復(fù)大全含任意文件2016-09-05
- 整頓微信公眾號(hào)過度營(yíng)銷 對(duì)嚴(yán)重違2016-01-26
- SEO優(yōu)化過程要避免什么?2016-01-26
- 網(wǎng)站空間被掛馬的原因原因及解決2016-01-26
- 2016企業(yè)該如何運(yùn)用互聯(lián)網(wǎng)進(jìn)行營(yíng)銷2016-01-26
- WEB前端項(xiàng)目開發(fā)中需注意的細(xì)節(jié)2016-01-26
- 低價(jià)網(wǎng)站建設(shè)的危害有哪些?2016-01-15
- 如何詳細(xì)的分析你網(wǎng)站的競(jìng)爭(zhēng)對(duì)手2015-06-10
- 網(wǎng)站設(shè)計(jì)中四個(gè)常犯的錯(cuò)誤2015-01-22
- 如何搭配網(wǎng)站設(shè)計(jì)中的色彩?2015-01-22