PHP コンテナ
各言語のコンテナは異なり、少なくとも名前は異なりますが、同じことが 1 つあります。それは配列です~
Java は、これまで見た中で最も多くのコンテナ タイプを持つ言語です~
PHP の弱い型の特性により、コンテナーが OO のように見えます。
配列
boolean print_r($array); //用来输出数组,还有用while遍历打印 is_array()
$state[0] = "0"; $state[1] = "1"; $state[] = "2"; //数字索引才能这么玩的 echo $state[0].$state[2]; // 长度无需提前定义,动态 $state["key"] = "value"; // 还可以使用字符串做下标,全对象的吗? $array1 = array("OH" => "Ohio", "CA" => "California", "HI" => "Hawaii"); // 这不就是OC的Dictionary的创建方式么~ // 便利地创建有序数组 // 操作数据库时,听说就是用list来玩,可以一次读取多个对象
boolean in_array($tag, $array [boolean]);//最后是否匹配类型 boolean array_key_exists(key, $array); array array_keys($array, [$key]); //可选参数的意思是? array array_values($array); key array_search($value, $array, [boolean]); //可选,类型匹配? array echo($array) =>返回当前的key-value key key($array) => 类似jdbc读取ResultSet key next($array) => 下一个 key prev($array) => 上一个 key reset($array) => 指针回到开头 key end($array) => 最后一个 key current($array) => 当前,但不移动指针,简直就和文件操作一个样子~
// 书上说很有用的一个函数,将数据传给函数,特附上例子 boolean array_walk($array, callback function, [可选传入函数的第三个参数C]); // fuck,函数接口是两个参数,也可以有第三个参数,对应C // 想改值就传指针~,PHP也有指针玩耶 function sanitize_data(&$value, $key) { $value = strip_tags($value); } $ay['keyword'] = "yes"; array_walk($ay['keyword'],"sanitize_data"); $array1 = array("OH","CA","NY","HI","CT"); $array3 = array("TX","MD","NE","OH","HI"); $intersection = array_intersect($array1, $array3); print_r($intersection);
//P85,抄个名字~ array_reverse()逆置 array_flip()键值交换 count() array_count_values() array_unique()去除重复的值
sort() natsort() natcasesort() rsort() asort() array_multisort() arsort() ksort() krsort() usort()