10.30學習筆記
魔術方法
__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學習筆記