PHP网页设计PHP教程:foreach利用援用注重的成绩
即使你理解不了PHP,但是也必须先跟它混个脸熟,看,一遍遍的看,看的同时一边琢磨,一边按照它所教的打代码,即使你搞不清楚那些代码到底是干嘛的,但是起码你应该找找感觉。 </p> foreach 经由过程在 $value 之前加上 & 很轻易就可以修正数组的单位,如:PHP代码
[*]foreach($arr as &$value){
[*] $value .= '4';
[*]}
但这个用法也很轻易形成毛病,并且也不轻易找。
看例子更直接了当:
PHP代码
[*]<?php
[*]$arr = array('a','b','c');
[*]$arr2 = array('d', 'e', 'f');
[*]
[*]foreach($arr as &$value){//习气用$value或$val
[*] $value .= '4';
[*]}
[*]
[*]//都处置终了咱们在页面模版输入,起首输入$arr2
[*]foreach($arr2 as $value){//习气用$value或$val
[*] //echo $value;
[*]}
[*]//然后再如许输入 $arr;
[*]foreach($arr as $value){//习气用$value或$val
[*] echo $value, "\n";
[*]}
[*]?>
人人看看输入的了局是不是和希冀的一样。这里了局是:
a4
b4
b4
了局和我等候的纷歧样,这个就是援用引发的成绩。
在 foreach($arr as &$value) 数组遍历到最初,援用关系并没有断开,这是同等于 $value 与 $arr 的最初一个单位即 $arr 援用。
再到 foreach($arr2 as $value),$value的值一向随数组单位的值变,因为援用关系没有断开,$arr 的值也随着变更。一向到$arr2遍历完,这是$value的值为f,所以$arr值也为f。
这时候$arr的值应为:
Array
(
=> a4
=> b4
=> f
)
这个和咱们看到的终究输入了局又纷歧样。再到 foreach($arr as $value),同理,这时候 $arr的值也跟着 $value 变更,当遍历到key为1,即$arr时,$arr的值也酿成 $arr 的值,便是 b4。然后再遍历到key为2时 $arr的值又成了 $arr 的值,也就是 b4 了。就是输入时的了局。
所以在 foreach 利用援用时要注重了。也能够在处置完后当即断开援用关系,前面就不会有上述情形了。
PHP代码
[*]foreach($arr as &$value){
[*] $value .= '4';
[*]}
[*]unset($value);
说说这一个月左右的学习情况和心得吧!我个人认为,既然决定了去做一件事,那就要以认真的态度去对待!既然决定来学习了,那不管当初是抱着怎样的心态来到这个培训班的,都要让自己认真的投入到学习中。 开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。 微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox支持的不是很好,所以能少用还是少用的好。 说点我烦的低级错误吧,曾经有次插入mysql的时间 弄了300年结果老报错,其实mysql的时间是有限制的,大概是到203X年具体的记不清啦,囧。 当留言板完成的时候,下步可以把做1个单人的blog程序,做为目标, 找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。 有位前辈曾经跟我说过,phper 至少要掌握200个函数 编起程序来才能顺畅点,那些不熟悉的函数记不住也要一拿手册就能找到。所以建议新手们没事就看看php的手册(至少array函数和string函数是要记牢的)。 本人接触php时间不长,算是phper中的小菜鸟一只吧。由于刚开始学的时候没有名师指,碰过不少疙瘩,呗很多小问题卡过很久,白白浪费不少宝贵的时间,在次分享一些子的学习的心得。 Apache不是非得用80或者8080端口的,我刚开始安得时候就是80端口老占用,就用了个 81端口,结果照常,就是输localhost的时候,应该输入为 localhost:81 先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。 写的比较杂,因为我也是个新手,不当至于大家多多指正。 因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax 曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线\\\\\\\'_\\\\\\\' ; 实践是检验自己会不会的真理。 当留言板完成的时候,下步可以把做1个单人的blog程序,做为目标, 学好程序语言,多些才是王道,写两个小时代码的作用绝对超过看一天书,这个我是深有体会(顺便还能练打字速度)。 你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。 开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。 php里的数组为空的时候是不能拿来遍历的;(这个有点低级啊,不过我刚被这个边界问题墨迹了好长一会) 没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。
页:
[1]
2