php 使用系統(tǒng)內(nèi)建函數(shù)
PHP中文網(wǎng)的豬哥,總結了這麼兩句話:
????1.如果程式碼能賺錢,幫你賺錢最多的是基本文法
#????2.如果你還在當程式設計師,你看手冊的時候可能比你看老婆的時間還長
現(xiàn)在我們就來學習如何使用系統(tǒng)內(nèi)建函數(shù)。
子曰:送你一條魚,不如教你捕魚的方法。
下面我們就來學習捕魚的辦法,在使用系統(tǒng)內(nèi)建函數(shù)前,你必須學會以下幾個東西:
????1.下載一個最新的手冊
????2.經(jīng)常更新手冊
????3.將PHP手冊放在最容易找到的地方。需要的時候隨時可以查手冊
????4.學會手冊中函數(shù)的用法
你可以訪問,下載後放到桌面上,隨時需要隨時打開查即可:
http://ipnx.cn (每週更新一次)
使用函數(shù)的重點是三塊:
????1.了解函數(shù)的功能,特別是常用函數(shù)的功能
????2.了解函數(shù)的參數(shù)
????3.了解函數(shù)的回傳值
我們針對上面的三塊,講解6個函數(shù),這6個函數(shù),概況了函數(shù)的基本用法的全部注意事項:
????1.直接傳回布林型,如bool copy ()
????2.以MIXED參數(shù)的函數(shù)如何呼叫。 Mixed表示任何類型的資料。如Array_unshift()
????3.參數(shù)中帶有&符的參數(shù),一定要傳一個變數(shù)作為參數(shù)。函數(shù)裡面改變了他的值。
????4.有[]的參數(shù),表示可選項。
????5.有…的參數(shù),表示可以傳遞任多個參數(shù)。
????6.有callback的參數(shù),表示回呼函數(shù)。需要傳一個函數(shù)進來。 Array_map()
????7.函數(shù)支援的版本你要了解
實驗
1,拿copy()這個函數(shù)來舉例:傳回bool值的,通常為操作是否成功、驗證是否通過、檢查是否正確等。
我們拿copy這個函數(shù)來看:
bool copy ( string $source , string $dest [, resource $context ] )
#這個函數(shù)的功能為:?拷備一個檔案
傳回值為為:?bool型值,就是成功回傳true,失敗回傳false
參數(shù)為:?兩個字串的值,一個是copy的來源文件,一個為目標文件。第三個參數(shù)可選的,不常用,我們不管它。
所以,我們就可以推理出下面的實驗了:
<?php if(copy('abc.txt','bcd.txt')){ echo '復制成功'; }else{ echo '復制失敗'; } ?>
2,Mixed表示任何類型的資料。如Array_unshift()
我們來看這個函數(shù):
int array_unshift ( array &$array , mixed $value1 [, mixed $... ] )
功能:?操作一個數(shù)組,然後在數(shù)組中插入其他類型的參數(shù)。
回傳值:?int 類型,或許就是插入成功最後的個數(shù)
參數(shù):?第一個參數(shù)為&符,也就是在操作的過程中,改變了第一個參數(shù)的值。引用傳參。也就是操作這個數(shù)組,向這個數(shù)組傳入?yún)?shù)。會直接改變這個陣列的值。
第二個參數(shù)為mixed,因為陣列可以存入多個不同的型別.mixed是指混合的意思。因此,mixed是指可傳入任意型別
第三個數(shù)數(shù)加了中括號,我們所有遇到中括號的。都是指後面的參數(shù)可傳,也可以不傳。
第四,最後還看到了三個...(省略號)。代表可以傳入任意多個參數(shù)。
範例:
<?php $queue = array("鳳姐", "芙蓉"); array_unshift($queue, "楊冪", "姚晨"); print_r($queue); ?>
你可以自己實驗一下,看看結果。
3, 遇到callback的傳函數(shù)或匿名函數(shù)進去協(xié)助處理,讓功能更強大。
bool array_walk ( array &$array , callable $callback [, mixed $userdata = NULL ] )
##我們來看看。 功能:傳入一個回呼函數(shù),將陣列的原來的群組操作,並且發(fā)生變化。 傳回值:bool 值 也就是意味著,提示成功或失敗
第一個參數(shù)是要操作的陣列。
<?php $shuaige = array("a" => "wuyanzhu", "b" => "huangxiaoming", "c" => "ninzetao"); function test_print($item2, $key) { echo $key ." ---". strtoupper($item2) . "<br />\n"; } echo '<pre>'; var_dump($shuaige); echo '</pre>'; array_walk($shuaige, 'test_print'); echo '用自定義函數(shù)test_print執(zhí)行后的效果:'; echo '<pre>'; var_dump($shuaige); echo '</pre>'; ?>透過上例,我們發(fā)現(xiàn)陣列中的每個參數(shù)和值都被修改了。上例大家只需要理解看見傳callback的,需要傳入函數(shù)協(xié)助處理就可以。不用理解。我們在下一章的陣列部份,學習完數(shù)組,大家可以再看看。 函數(shù)支援的版本號碼很重要我們來看手冊中一個函數(shù)的截圖:
#