标签:默认 题目 引用关系 垃圾 ons 引用 大小 安装 set
排去Apache、PHP、Mysql的安装与配置,今天算是正式开始了PHP的学习。今天因为是PHP的基础入门,所以总的来说没什么难的地方,不过这并不代表没有从中学习到什么,比方说PHP中的输出语句,排去我在C中学到的Printf,今天还学到了,print(只能输出一个简单的字符串、数值等,而不能输出数组、对象,这一条输出语句一看就没什么用处),echo是PHP特有的输出方式(能输出数组和对象以及简单的字符串数值等,这条中规中矩,也挺好记),比较重要的是测试用的var_dump(不但能输出多种对象,而且还能输出字符长度,类型的附加的信息,测试时挺有用处),还有比较适合输出数组的print_r。
接下来的变量初始化概念还是挺容易理解,或者说因为早就接触过所以好理解,不过在概念这方面,今天学到了一个之前不知道的概念,那就是比如当一个变量初始化为一个值后,再次赋值给它,我一直以为可能就是重新再内存中开辟一个位置放新的值,然后再把新的值的地址传递给变量名,最后再把之前变量初始化时所用的值丢到类似垃圾箱之类的地方丢弃并释放内存空间。但是今天实际根据课堂所联想到的是,当一个已经赋过值的变量再次赋值给它时,系统会直接把内存中旧值位置的值给丢弃并直接把新值写入,算是自己给自己解了个惑吧。
还有就是可变变量概念的植入,我觉得,理解很容易,无非就是$$变量名(拆开就是$[$变量名],就是说把$变量名的值作为变量名再次当作一个变量使用,e.g.$$a,其中$a=abc的话,那么$$a等价于$abc),跟课堂上一样,一下子就能想到这能用在变量名有规律递增且需要大量变量相加时,也就是说比如:
$v1=num1;
$v2=num2;
$v3=num3;
...
求总的和这种题目时能用上,因为这种时候就可以控制变量名发生变化然后通过循环逐个递加起来:
for ($i=1,$i<=length,i++){
$v = ‘v‘.i; // ‘ . ‘符号为JS中的‘ + ‘号,作用为把字符类型与变量进行拼接
$sum += $$v
}
这么一来就能求出大量变量名有规律时总的相加的和,其中length是需要相加的变量数。
变量操作方面,值得注意的是PHP中,变量可以把变量调用语句写在变量初始化之前。还有就是删除变量所用的unset,它所需要注意的就是它的删除,只是删除内存中的对应变量名以及变量名和值的引用关系,而变量值以及所占用的内存地址并不会删除。也就是说如果还有其他变量引用着该值,那么这个值就不会被删除,如果没有引用该值的变量,那么该值会被删除,占用的内存空间也会被释放(这又引出了地址传递符&)。
预定义变量无非就是已经预设定好了的变量(感觉更像是一种函数,虽然不是),直接调用,目前值得记忆或者说能很快用上的有_POST,_REQUEST。有了这两条变量,已经可以实现捕捉处理前端所提交的数据了,感觉再加上一点点数据库的知识就应该可以搞一个简单的动态网站了吧。
接下来就是常量,常量没什么好说的,无非就是定义一个在一个脚本运行周期内值不会发生改变的变量罢了(格式为|define(‘常量名‘,值[,true or fulse]|其中第三个值的意思是常量名是否不区分大小写,默认当然是fulse))&(const 常量名=值),不过有趣的是提到了一个脚本运行周期,也就是说也许在不同脚本运行周期中,同一个脚本的同一个常量会有不同值出现的情况?最后就是测试用语句:get_defined_constants()
还有就是预定义常量,也是多用于测试用,以后会慢慢接触到。以及魔术常量,以_LINE_为例,格式特点为前后的 ‘ _ ‘ 下划线符号,意思为该常量的值会为该常量当前在PHP所在行数,这个固然目前想不到用处,但是其他的魔术常量估计用处会更大一些。
标签:默认 题目 引用关系 垃圾 ons 引用 大小 安装 set
原文地址:http://www.cnblogs.com/kosmos/p/6064141.html