php課程筆記4

來源:互聯網
上載者:User

標籤:io   ar   os   使用   sp   for   strong   檔案   on   

課時83 PHP引用參數的函數

1.只有在記憶體中的變數,才有地址.

2.有參考關聯性的兩個變數,一個改變,另一個也改變

3.如果在函數中,有&出現,說明這個參數是一個引用參數,在調用時傳參數時,就必須傳一個變數.

課時84 PHP預設參數的函數

1.預設參數一定順序要在後面, 預設參數後不能有沒加預設參數的變數.

課時85 PHP可變個數參數的函數

1.$arr = func_get_args();

此函數可以接收所有變數. 形成一個數組.

2.func_num_args();  輸出參數個數‘

3.

function demo() {

$sum = 0;

if($i=0; $i<func_num_args();$i++){

$sum += func_get_arg($i);

}

return $sum;

}

課時86 PHP變數函數

1.  function add($a,$b){

return $a+$b;

}

$var = "add";

echo $var(40,23);

 

2.如果將一個函數名稱給一個變數(字串),然後在這個變數後面加上括弧就會調用這個函數.

課時87 PHP回呼函數

1.在使用一個函數的時候,如果傳一個變數不能解決多大的問題,就需要傳一個過程進入到函數中.改變函數的執行行為.

2.在函數的調用中,在參數中傳遞的不是一個變數或一個值,而是一個函數,這就是回呼函數.

課時88 PHP製作回呼函數1

<?php

function demo($n,$num){
$num = "aida";
for($i=0;$i<$n;$i++){
if($num($i)){
continue;
}
echo $i."<br>";
}
}
function aida($i){
if($i>10 && $i<20){
return true;
}

}

echo demo(100,"aida");

?>

 

用了回呼函數,用了變數函數.

課時89 PHP製作回呼函數2

/*
function demo($num,$n){
//if($n($i))
for($i=0;$i<$num;$i++){
if(call_user_func_array($n,array($i))){
continue;
}
echo $i."<br>";
}
}
function test($i){
if($i == strrev($i)){
return true;
}
else{
return false;
}
}
demo(500,"test");

*/

 課時90 PHP製作回呼函數3

function demo($num,$n){
//if($n($i))
for($i=0;$i<$num;$i++){
if(call_user_func_array($n,array($i))){
continue;
}
echo $i."<br>";
}
}

class filter{
function one($i){
if($i%3==0){
return true;
}
}
static function two($i){
if(preg_match(‘/3/‘,$i)){
return true;
}
}
}

function test($i){
if($i == strrev($i)){
return true;
}
else{
return false;
}

}
//demo(500,array(new filter(),"one"));
demo(500,array("filter","two"));

課時91 PHP系統函數

$dirname = ‘d:\music‘;

function dirfor($dirname){
$dir = opendir($dirname);

readdir($dir);
readdir($dir);
while( $file = readdir($dir)){
$file = $dirname."\\".$file;
if( is_dir($file)){
echo "目錄:".$file."<br>";
dirfor($file);
}else{
echo "檔案:".$file."<br>";
}

}
closedir($dir);
}
dirfor($dirname);

課時92 PHP遞迴函式

函數調用自己就是遞迴.

課時93 PHP載入自訂的函數庫

1.

include();

require();

 

require和include都是調用調用頁面的函數, 但require是程式執行必須要的檔案,如果發現不存在,就會報致命錯誤.而include只是程式執行所包含的檔案,如果發現不存在,就只會警告檔案不存在.

補充: require沒有傳回值,而include沒有,所以require的執行速度比include快.

避免一次包含同一檔案,使用require_once()或include_once().但能用require時就別用require_once(),因為效率高.

 

2.include包含檔案的同時又執行了非PHP檔案.

如果是非PHP檔案,就直接輸出.

課時94 PHP5.3的新特性匿名函數

1.匿名函數

$var = function(){

};  //一定要加分號結束

也叫閉包函數.

課時95 PHP閉包函數(closures)的概念

1.子函數可以使用父函數的局部變數,就叫做閉包.

function demo(){

$a = 10;

$var = function($n) use ($a){

echo $n."<br>";

echo $a;

};

$var(5);

}

 

demo();

課時96 PHP閉包函數(closures)的特性

閉包函數返回時,該函數內部變數處於啟用狀態,函數坐在棧區仍然保留.

 課時98 PHP數組的概述

課時99 PHP數組的基本概念及分類

1.數組的內容叫做"元素".

2.索引值對

3.索引數組,關聯陣列

 

 課時100 PHP數組聲明的特性

1.[ ]來操作下標,也可以使用{}. 但建議使用[ ].

2.數組中的[ ]在字串中不算是特殊符號.

3.下標02不會是一個合法的十進位數,所以不會強制轉換.

4.下標true會轉換成1,false會轉換成0

5.下標是NULL就是空.

 

課時101 PHP索引和關聯陣列及需要注意的細節

1. 下標相同的內容會被覆蓋.

2.數組的自動下標預設是從0開始,然後一直增長,只會是出現過的最大值+1.

3.關聯陣列的字串下標不會影響索引下標的排列規則.

4.負數也可以做為下標.

課時102 PHP使用array()聲明數組

1.函數如果返回的是數組, 那要用時可以直接在函數後面加[ ]和下標. 例如  demo()[2];

2.數組聲明也可以使用 $arr = [‘2‘,‘3‘,‘5‘];

課時103 PHP刪除數組中的值應用執行個體(猴子選大王)

1.在數組中把值變成null,下標還會在, 但用unset()會連下標都消失. 下標不會重新索引,需要使用array_values()函數重新索引.

2.

<?php

function xdw($m,$n){
$arr = array();

$a = "a";

for($i=0;$i<$m;$i++){
$arr[] = $a++;
}

$i=0;
while(count($arr)>1){
if(($i+1)%$n == 0){
unset($arr[$i]);
}else{
$arr[] = $arr[$i];

unset($arr[$i]);
print_r($arr);
}
$i++;

}
return $arr;

}

print_r(xdw(4,3));

?>

課時104 PHP二維數組的聲明與應用

課時105 PHP多維陣列

1.如果二維數組為空白則會變成外層增加,裡層為0;

$array[][]="23";

$array[][]=44;

只會在外層從0到1,內層都是0.

 

課時106 使用for迴圈遍曆數組

1.效率很高,就是數組的訪問方式.

2.count($arr)擷取數組長度.是數組的實際元素的個數.

3.for迴圈有一個條件,就是下標不能斷.必須是連續的.

課時107 使用foreach語句遍曆數組

1.foreach(數組   as  自訂變數){

......

}

2.foreach迴圈的次數取決與數組的個數

3.foreach會將數組中的元素,在每次迴圈中,一次將元素的值給自訂的變數.在每次迴圈中用到這個變數,即用到了當前的數組中的元素.

課時108 使用foreach語句遍曆數組的應用

php課程筆記4

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.