/** * 将指定Array内的元素复制到目标Array中, 如果具有相同key, 则会被覆盖. **/ public static function copyArrayItems($source, $target) { foreach($source as $sourceItemKey=>$sourceItemValue) { $target[$sourceItemKey] = $sourceItemValue; } return $target; } /** * 移除$target数组中中带有 $source中元素相同key的元素. * @param $source * @param $target * @return unknown_type */ public static function removeArrayItems($source, $target) { foreach($source as $sourceKey => $sourseValue) { unset($target[$sourseValue]); } return $target; }
有关数组的操作: http://liguoliang.com/2010/php-array-简单操作小结/
1. 创建Array: $arraySites = array();
2. addItem: $arraySites[$site->id] = $site;
3. 使用foreach遍历Array:
foreach ($arraySites as $site) { // 遍历每一个Site. // do something. } // Or: foreach($array as $key=>$value) { echo "$key,$value "; }
4. length: count($arraySite);
5. 打散/切割 Array : array_chunk($mails, $MAX_MAILS_PER_SMTP_SESSION, true);
该方法将会根据设定的大小对原数组进行切割, 生成多个小的数组(最后一个可能会少于单元大小), 第三个参数控制是否在打散后的数组内保留其原有key.
复制/移除 数组: http://liguoliang.com/2010/copy-and-remove-array-to-array-in-php/
今天老子太累了….一日一类扛不住了…先把以前的笔记发上来撑着吧… ECMAScript for XML (E4X)是一扩展了ECMAScript(JavaScript)的程式语言,它增加本地XML支持,为ECMAScript程序员提供了一种感觉直观的方式来访问XML文档。
//通过表达式直接创建XML对象[省略] //通过XML对象的构造函数创建XML对象[省略] //通过Array中Object建立. /**把所有person从数组Parry种提出来,并转换为XML格式, */ public static function allPersonsToXml():XML { var i:int; var flexXML:XML =for (i=0;i 访问XML:
E4X提供两种工具来访问一个XML层次结构中的数据:
XML和XMLLIst内容访问方法(attribute(),attribute()…等 具有点(.), 后裔(..), 和属性(@) 运算符的变量风格访问
在XML文档中,有一部分数据是以节点方式存在的.在使用XML对象过程中,除了使用节点之外,对于XML节点属性的访问也尤为重要.在AS3.0中,最基本属性访问方式就是使用”@”操作符.可以通过@操作符加属性名称的方式直接访问节点的属性.
Var flexXML : XML =//通过@访问属性 Trace(flexXML.FlashPlayer.@version); //9 Trace(flexXML.FlashPlayer.Flash.@version); //9 Trace(flexXML.FlashPlayer.@*.toXMLString); //输出: //9 //Adobe //使用attribute访问, Trace(flexXML.FlashPlayer.attribute(“version”); Trace(flexXML.FlashPlayer.attribute(“*”); Flash CS3 Flash 8 Flex3 Google Ajax1.0 遍历XML节点
/**用for in遍历数组中的Student,并插入到Paryy中.
*/
for (var name:String in novel.child("Student")) {
PArray.push(
new Student(novel.child("Student")[name].Name,
int(novel.child("Student")[name].Age)
)
);
} // End: for each Student[千斤顶之一日一类002]Top Level: Array学习
Categories: Flex; Tagged with: ActionScript • Array • Flex; @ November 1st, 2008 23:28坦白说每天搞一个类是很累且疲惫的, 今天是玩千斤顶的第二天, 周六, 我突然体味到那些包二奶的爷们们的难处, 多累啊….试想我每天看一个类, 今天是第二把尝试, 都有些扛不住了, 下午逛街回来给娘做了饭, 一起吃完看了会儿电视, 着实扛不住了, 就小憩了半个小时才爬起来看今天的One Day One Class. 假如给我400个女人, 让我One Day One Woman, 我岂不是要累死?
不扯了, 总结下Array类.
Top Level: Array
. 游标[index]从0开始;
. Array()可以以函数方式被调用
. 可以往Array里存储数字, 字符串, 对象, Array.
. Array是稀疏的, 如果某数组在index为0与5时都包含对象, 但是在0与5之间没有任何值, 则如果调用中间元素时,返回"undefined";
. 传地址, 而非传值. 即: 如果将某数组赋值给另外一个数组, 则该来那个歌数组都指向同一个数组, 修改其中一个, 另外一个也随之修改. 不同于数字与字符串等
. 不要用数组来建立哈希表
. 可以继承Array类, 并 重写,增加方法, 但必须制定该子类为Dynamic类型, 否则将无法使用Sort.Public Properties
length : uint 返回数组的长度
继承来的我就不说了…..Public Methods
归归类, 不然就太没有创意了,跟API一模一样….
1. 数组的创建:
var arrayStu_1:Array = new Array(1); //创建一个长度为1的数组. 但如果不赋值, 都是undefined
var arrayStu_2:Array = new Array("arrayStu_2_Index0", "arrayStu_2_Index1"); //创建包含有括号里这俩元素的数组
var arrayStu_3:Array = ["arrayStu_3_Index0", "arrayStu3_Index1"]; //这个更直接一些了, 直接赋值.2. 数组元素的访问, 增加, 修改, 删除:
访问: array[i], 访问某元素, 如果要访问全部, 使用For循环
增加:
Push(): 将一个或多个元素添加到数组的结尾,并返回该数组的新长度。
unshift(): 将一个或多个元素添加到数组的开头,并返回该数组的新长度。
修改: 直接赋值: array[i] = new value;
删除:
Pop(): 删除数组中最后一个元素,并返回该元素的值。
Shift(): 删除数组中第一个元素,并返回该元素。 其余数组元素将从其原始位置 i 移至 i-1。同时该数长度减少一位;
另外:
splice():给数组添加元素以及从数组中删除元素 可以用于增加或删除元素,同时增大或减小数组长度;3. 长度或index操作:
length:返回array的长度;
indexOf(): 从左向右遍历数组, 遇到符合要求的元素时, 返回该元素index. 如果遍历结束仍未发现符合要求的元素,返回-1;
lastIndexOf(): 与inidexOf()相反, 从右向左寻找要求的元素;4. 数组的操作
数组的连接: concat(), 数组的连接 如:
arrayStu_2 = arrayStu_2.concat(arrayStu_1);
trace(arrayStu_2.toString()); //显示: arrayStu_2_Index0,arrayStu_2_Index1,——注意这个逗号, 意为后头还有个空的. 因为arrayStu_1只是一个长度为1但没有元素的数组.
数组元素的检测: evey(): 对数组中的每一项执行测试函数,直到获得对指定的函数返回false
的项。 使用此方法可确定数组中的所有项是否满足某一条件,如具有的值小于某一特定数值。
筛选出符合要求之元素并新建一个数组: filter();
Join():将数组中的元素转换为字符串、在元素间插入指定的分隔符、连接这些元素然后返回结果字符串。
Map(): 返回一个新数组,其中包含此函数对原始数组中每一项的执行结果。
reverse(): 在当前位置倒转数组。
slice(): 返回由原始数组中某一范围的元素构成的新数组,而不修改原始数组。 返回的数组包括startIndex
元素以及从其开始到endIndex
元素(但不包括该元素)的所有元素。 如果您没有传递任何参数,则创建原始数组的一个副本。如果两参数均为-1, 则起点或终点为数组的结尾, -1 指的是最后一个元素。5. 其他操作
Some(), Sort(), SortOn()
// Proudly powered by Apache, PHP, MySQL, WordPress, Bootstrap, etc,.