簡介:學習完了php和jQuery之後,對函數的記憶不到位,導致很多函數沒記住,所以為了促進自己的記憶,每天花一點時間來寫這個博客。 時間:2016-12-18 地點:太原 天氣:晴 一.php函數(數組相關的函數) 1.array_change_key_case 作用:返回字元串鍵名為全大寫或者全 ...
簡介:學習完了php和jQuery之後,對函數的記憶不到位,導致很多函數沒記住,所以為了促進自己的記憶,每天花一點時間來寫這個博客。
時間:2016-12-18 地點:太原 天氣:晴
一.php函數(數組相關的函數)
1.array_change_key_case 作用:返回字元串鍵名為全大寫或者全小寫的數組 (PHP 4 >= 4.2.0, PHP 5)
說明:array_change_key_case(array $input[,int $case=CASE_LOWER])
array_change_key_case是將$input數組中的所有鍵名改為全大寫或者小寫。改變是根據第二個選項case參數來進行的。本函數不改變數字索引。
參數:
input:需要操作的數組
case:可以在這使用兩個常量,CASE_UPPER或者CASE_LOWER(預設)。
返回值:返回一個鍵全是大寫或者小寫的數組;如果輸入值不是一個數組,那麼返回FASLE。
錯誤/異常:
如果輸入值不是一個數組,就會拋出一個錯誤警告(E_WARNNING)。
<?php
$test = [
"aaa"=>"aaa",
"bbb"=>"bbb",
"ccc"=>[
"ddd"=>"dddd",
"ccc"=>"cccc"
]
];
echo "<pre>";
print_r(array_change_key_case($test));
print_r(array_change_key_case($test,CASE_UPPER));
echo "</pre>";
結果為:
Array ( [aaa] => aaa [bbb] => bbb [ccc] => Array ( [ddd] => dddd [ccc] => cccc ) ) Array ( [AAA] => aaa [BBB] => bbb [CCC] => Array ( [ddd] => dddd [ccc] => cccc ) )
由此可得:只是針對一維數組。
//自己寫的一個可以適用於二維數組的,以後類似的問題都能用這種方法解決。
function array_change_key_both(&$test){ foreach($test as $key=>$value){ //只有當鍵值為字元串時才進行 if(is_string($key)){ $newkey = strtoupper($key); if(is_array($value)){ array_change_key_both($test[$key]); } if($newkey!=$key){ unset($test[$key]); $test[$newkey]=$value; } } } } $test = [ "1111"=>"aaa", "bbb"=>"bbb", "ccc"=>[ "ddd"=>"dddd", "ccc"=>"cccc" ] ]; array_change_key_both($test); print_r($test);
結果為:
Array ( [1111] => aaa [BBB] => bbb [CCC] => Array ( [DDD] => dddd [CCC] => cccc ) )
2.array_chunk 作用:將一個數組分為多個 (PHP 4 >= 4.2.0, PHP 5)
說明:array array_chunk ( array $input
, int $size
[, bool $preserve_keys
= false ] )
將一個數組分割成多個數組,每個數組中的元素個數由size決定,最後一個數組元素個數可能小於size
參數:
input:要被分割的數組
size:每個數組中元素的個數
preserve_key:
設為 TRUE
,可以使 PHP 保留輸入數組中原來的鍵名。如果你指定了 FALSE
,那每個結果數組將用從零開始的新數字索引。預設值是 FALSE
。
返回值:
得到的數組是一個多維數組中的單元,其索引從零開始,每一維包含了 size
個元素。
錯誤/異常:
如果 size
小於 1,會拋出一個 E_WARNING
錯誤並返回 NULL
。
<?php $test = ['a'=>1,2,3,4,5,6,7,8,9]; echo '<pre>'; print_r(array_chunk($test,2,true)); echo '</pre>';
//結果為
Array
( [0] => Array ( [a] => 1 [0] => 2 ) [1] => Array ( [1] => 3 [2] => 4 ) [2] => Array ( [3] => 5 [4] => 6 ) [3] => Array ( [5] => 7 [6] => 8 ) [4] => Array ( [7] => 9 ) )
二.js函數(參考網址:http://jquery.cuishifeng.cn/jQuery_selector_context.html)
1.jQuery的和核心函數:jQuery([selector,[context]])
這個函數接收一個包含 CSS 選擇器的字元串,然後用這個字元串去匹配一組元素。
jQuery 的核心功能都是通過這個函數實現的。 jQuery中的一切都基於這個函數,或者說都是在以某種方式使用這個函數。這個函數最基本的用法就是向它傳遞一個表達式(通常由 CSS 選擇器組成),然後根據這個表達式來查找所有匹配的元素。
預設情況下, 如果沒有指定context參數,$()將在當前的 HTML document中查找 DOM 元素;如果指定了 context 參數,如一個 DOM 元素集或 jQuery 對象,那就會在這個 context 中查找。在jQuery 1.3.2以後,其返回的元素順序等同於在context中出現的先後順序。
參考文檔中 選擇器 部分獲取更多用於 expression 參數的 CSS 語法的信息。
參數:
1)selector,[context]
selector:用來查找的字元串
context:作為待查找的 DOM 元素集、文檔或 jQuery 對象。
2)element
一個用於封裝成jQuery對象的DOM元素
3)object
一個用於封裝成jQuery對象
4)elementArray
一個用於封裝成jQuery對象的DOM元素數組。
5)jQuery object
一個用於克隆的jQuery對象。
6)jQuery()
返回一個空的jQuery對象。
實例:
1)描述:
找到所有 p 元素,並且這些元素都必須是 div 元素的子元素。
jQuery 代碼:
$("div > p");
2)描述:
設置頁面背景色。
jQuery 代碼:
$(document.body).css( "background", "black" );
3)描述:
隱藏一個表單中所有元素。
jQuery 代碼:
$(myForm.elements).hide()
4)描述:
在文檔的第一個表單中,查找所有的單選按鈕(即: type 值為 radio 的 input 元素)。
jQuery 代碼:
$("input:radio", document.forms[0]);
5)描述:
在一個由 AJAX 返回的 XML 文檔中,查找所有的 div 元素。
jQuery 代碼:
$("div", xml.responseXML);