1. 程式人生 > >10.30學習筆記

10.30學習筆記

重點 php數組 php 數組 功能 數組 顯示 count() 輸入 bsp

魔術方法

__FUNCTION__ 獲取函數的名字
function display()
{
echo(__FUNCTION__);


}

display();

匿名函數 自動調用
array_filter(數組名,匿名函數(參數){函數體})

例子:
$arr = [1,2,3,4];
$ars = array_filter($arr,function($x){
//獲取偶數
if($x % 2 == 0)
{
return $x;
}
});
print_r( $ars);

function_exists() 判斷是否是個函數

file_exists() 判斷是否是個文件

遞歸函數 有遞有歸 自己去調用自己本身
遞歸主要用於 分類 欄目

例子:

function num($m)
{
echo $m;
if($m > 1)
{
num($m - 1);
}
}
num(10);

php 數組(重點 )
js 申明一個數組 Array() 首字母一定要大寫
php 申明一個數組 array() 不需要new這個關鍵字

第一種聲明方式:

以數組的索引下標)形式

技術分享圖片

打印數組 print_r() var_dump()

print_r() var_dump() 打印輸出(打印輸出數組和對象) echo() 打印數字或者字符串
print_r() 打印輸出 打印整個結果 調試
var_dump() 打印輸出 會輸出詳細的信息 數據長度和類型 調試

數組的特點:

php數組下標間隔不會去填充

php如果沒有下標,默認會給你添加下標

php數組默認下標從0開始

php數組下標可以自定義 (不能用中文,也不能用關鍵字)

技術分享圖片

第二種聲明方式:

技術分享圖片

數組的特點:

默認沒有給下標,默認下標從0開始排

可以給下標,也可以不要下標 給下標的格式 key=>val <=> 1=>18

給了自定義的下標(字符串的下標(如果是數字後面的按照前面的繼續排)),後面沒有給下標,默認從0開始
如果前面給定數字類型的下標,後面沒有給定的下標默認從前面給定數字繼續排下去

寫法 值與值之間用逗號隔開,最後一個值得逗號可加可不加

☆ key(鍵)=>value(值)

tips:

數據索引
這種寫法必須php的版本是4.0以上才能使用
可以自定義下標

php數組的循環

foreach(循環數組 as $k=>$v) 循環 只供給數組或者對象使用
//$k=>$v $key=>$value

技術分享圖片

foreach 循環時裏面只有一個變量,默認都是讀取value值

冒號的那種寫法通常用在與html交互的時候使用,為了與html區分開

技術分享圖片

for 循環

技術分享圖片

list() 集合 數組函數 把下標作為變量輸出,也就是修改下標

each() 指針循環 循環輸出的時候 一定要寫全 echo ($a[‘key‘]); echo ($a[‘value‘])

count() 統計數組的長度 ☆

php二維數組 二維數組以上的數組叫多維數組

foreach() 只供給數組或者對象使用

foreach() 2層循環的值不能重復,重復會導致覆蓋

is_array()//判斷是否是個數組

in_array()//判斷這個值是否在數組裏面

模擬一個從數據庫讀出來的數據 (數據庫讀出來的數據都是二維數據)

php超級數組 嚴格區分大小寫 重點

get post 是http請求方式
($_GET) $_POST $_REQUEST 獲取表單提交的值
action 交互的地址 action="交互程序地址" 中間的交互作用
method="" 提交的方式 get方式 post方式
表單裏面的name屬性 以後要對應數據庫裏的字段 表單裏面的name屬性會作為數組的下標輸出
http://127.0.0.1/demo3/10.php?username=iuser&password=678 路由後面緊跟參數第一個參數用?隔開 後面再緊跟參數用&符號隔開
method="get" 表單以get方式提交 get 顯示提交 提交的數據量不大 提交的數據不安全
print_r($_GET);
//$_GET[‘a‘];
post :隱式提交 提交的數據量較大 提交的數據比較安全 提交數據時不會在地址欄顯示提交的數據
//獲取文本框輸入的內容$_POST[‘password‘]
$_REQUEST 既可以接收post提交的數據也可以接收get提交的數據 不管form表單是用什麽方式提交的 他都接收 提交的數據最不安全
//print_r($_REQUEST)

簡單登錄
empty() 判斷值是否為空
header()可以設置
header("跳轉地址")php跳轉功能 跳轉到php程序

常用數組函數 一 ☆

count():統計元素個數

array_flip() 交換數組中的鍵和值 返回的是數組

array_values() 獲取數組中的值,返回的是個數組

array_keys() 獲取數組中的key值,返回個數組

in_array("要判斷的值",數組) 判斷某個值是否在這個數組裏面

array_shift(數組) 刪除數組中的第一個元素 返回值是被刪除的元素 刪除第一個

array_unshift(添加數組,元素) 向數組開頭插入一個或者多個元素 返回值是新數組的長度 開頭新增

array_push(要插入數組,元素) $arr[] = 1向數組的末尾壓入一個或者多個元素 返回值是新數組的長度 末尾新增

array_pop() 刪除數組的最後一個元素 返回的是刪除的元素 刪除最後一個

常用數組函數 二 ☆

implode(分隔字符,待分隔數組) 把數組的值以字符串的形式輸出出來

explode(分隔字符,待合並字符串)

array_reverse:數組$arr 倒敘輸出

shuffle:數組隨機順序輸出 a 隨機輸出

rray_search:獲取值"小明"在數組$arr2的鍵值 search:搜索 獲取鍵值

超級數組: $_REQUEST $GLLOBALS $_SERVER

IP :$_SERVER[‘SERVER_ADDR‘]

服務器端口"$_SERVER[‘SERVER_PORT‘]

$_SERVER php提供的超級數據裏面自帶很多數據

print_r($_SERVER[‘SERVER_ADDR‘]); //獲取ip地址

print_r($_SERVER[‘SERVER_PORT‘])//獲取服務器端口

php裏面字符串函數 ☆

substr()截取字符串函數

substr(截取內容,起始下標,截取位置)

$str(截取內容,-1) 從後往前截取

strrpos (截取內容,"你要查找的內容") //獲取最後出現位置

str_pad(填充的目標,把目標填充到多長(總共個數),用什麽來填充,填充的位置)

strtolower 轉小寫

strtoupper 轉大寫

ucfirst 字符串首字母大寫

ucwords 每個單詞首字母大寫

補充:

<hr/> 分隔線

10.30學習筆記