1、表达式
表达式就是最基本的一个
$fist ? $second : $third
True 计算second,false计算third。 讲道理。
有个全等运算符,很优秀。=== 这个比较值和类型都一样的。
本着表达式的原则,这里的自增是有点不太一样的。
前递增 ++$a 是指读取$a之前自增,所以叫前递增。那么后自增就是读取后再自增了,解释很优秀,很清楚吧。
2、运算符
看了下,其实都是用了的。比如字符串的 . 就是连接两个字符串
3、控制语句
<?php if (expr) statement ?>
<?php if ($a > $b){ echo "a > b"; }elseif ($a == $b){ echo "a = b"; }else{ echo "else"; }
还有一种就是用冒号代替花括号的手法,但是结尾以endif结尾,,还有endfor endforeach等一堆
foreach还是挺重要,因为官方解释这个的时候是这么说的:foreach 语法结构提供了遍历数组的简单方式
它生而为数组遍历。
之前提到的过的在foreach中修改value,这里又介绍了解除引用的办法
unset($value); //取消引用。
这是因为:Warning 数组最后一个元素的 $value 引用在 foreach 循环之后仍会保留。建议使用 unset() 来将其销毁。
官方介绍了一万个办法说 他们和foreach一样哦!老子都不知道list和each! 搞搞
------------------------------------------list()----------------------------------------------------------
list其实很清楚,就是把数组里的值拿出来,挨个付给变量。
list($drink, $brown, $tarf) = array(‘test1‘, ‘test2‘, ‘test3);
那么结果呢就是 $drink = ‘test1‘ and so on~
还有个功能是做嵌套数组的处理,同样很优秀。
$arr = array( [‘e‘,‘d‘], [‘a,‘z‘], ); foreach($arr as list($e, $a)){ echo "$e,,,,$a\n"; }
-----------------------------------------end list()------------------------------------------------------
-------------------------------------each()--------------------------------------
array each ( array &$array
) 这是each原形,可以看出这是有引用再里面的,所以each做的操作是修改原来的数组的!
它返回的是数组当前的key/value,然后调用一次后,指针指向下一个key/value。 如果要重置指针的位置,所以要恢复的,
调用 reset();
当然,如果key值没有的情况下,默认就是0,1,2-----。但是这里的数组本来默认就是0,1,2----
恩。
-------------------------------------end each()----------------------------------
所以就有了如何用list和each遍历数组的操作了。
<?php $arr = array( ‘test‘ => ‘test value‘, ‘test2‘ => ‘test value2‘, ); reset($arr); //reset before using each while(list($key, $value) = each($arr)){ echo "$key =>$value \n"; }
终于懂了,,这个地方很困惑之前。 其实就每次each既拿出了当前的key 和value,又把指针指向了下一个key/value。
明天再搞,准备睡觉~