仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 684|回复: 8
打印 上一主题 下一主题

[学习教程] PHP编程:PHP5+引进$GLOBALS提早初始化观点

[复制链接]
小女巫 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:16:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
实现固定数量的几张图片的上传;再如调试软件ZendStudio的使用,看了很多次老师的应用,但总感觉用的不顺手,不懂那么多的数据值,到底哪一个才是真正的问题所在;还有如数据库语句的封装,我只会用简单的函数来进行封装。明天在利用$GLOBALS[_SERVER]来替换$_SERVER来会见相干的情况变量,老是会报“_SERVERundefined”毛病。以下用例:
用例1:
<?php
print_r($GLOBALS);
此时输入中并没有_SERVER相干信息:
Array

[GLOBALS]=>Array
*RECURSION*
[_POST]=>Array


[_GET]=>Array


[_COOKIE]=>Array


[_FILES]=>Array




用例2:
<?php
print_r($GLOBALS);
print_r($_SERVER);
此时输入中含有_SERVER相干信息:
Array

[GLOBALS]=>Array
*RECURSION*
[_POST]=>Array


[_GET]=>Array


[_COOKIE]=>Array


[_FILES]=>Array


[_SERVER]=>Array



查了下PHP手册关于$GLOBALS形貌,援用therandshowatgmaildotcom的批评:
therandshowatgmaildotcom
AsofPHP5.4$GLOBALSisnowinitializedjust-in-time.Thismeanstherenowisanadvantagetonotuse
the$GLOBALSvariableasyoucanavoidtheoverheadofinitializingit.Howmuchofanadvantagethatis
Imnotsure,butIveneverliked$GLOBALSmuchanyways.
追根数源,发明PHP5Changelog更新日记的形貌:
UnorderedListItemImprovedZendEngine,performancetweaksandoptimizations
UnorderedListItemChanged$GLOBALSintoaJITautoglobal,soitsinitializedonlyifused.(thismayaffectopcodecaches!)www.2cto.com
718;Whenenabled,theSERVERandENVvariablesarecreatedwhentheyrefirst
719;used(JustInTime)insteadofwhenthescriptstarts.Ifthesevariables
720;arenotusedwithinascript,havingthisdirectiveonwillresultina
721;performancegain.ThePHPdirectivesregister_globals,register_long_arrays,
722;andregister_argc_argvmustbedisabledforthisdirectivetohaveanyaffect.
723;http://php.net/auto-globals-jit
724auto_globals_jit=On
终究弄分明了,PHP5+中在开启auto_globals_jit=On情形下,$_SERVER变量和$_ENV变量不会在剧本启动时就创立,而是会在第一次利用$SERVER和$ENV时才会创立。以是就会呈现上述两个用例的情形。

备注:
实测结论:
auto_globals_jitsettingisalsoaffecting$_REQUESTsuperglobalin5.3Itisnotexplicitlystatedindocumentation.
最少5.3.13版本中开启auto_globals_jit=On情形下,$_REQUEST也只会在第一次利用时才会创立。
培训的第三阶段,开始接触MYSQL,设计数据库,学习PHP如何去连接MYSQL数据库。对于MYSQL,我并不陌生,因为学校开设了Linux系统的课程,对于数据库的操作。
小妖女 该用户已被删除
沙发
发表于 2015-1-19 06:27:57 | 只看该作者
为了以后维护的方便最好是代码上都加上注释,“予人方便,自己方便”。此外开发文档什么的最好都弄齐全。我觉得这是程序员必备的素质。虽然会消耗点很多的时间。但是确实是非常有必要的。
金色的骷髅 该用户已被删除
板凳
发表于 2015-1-24 13:07:43 | 只看该作者
基础有没有对学习php没有太大区别,关键是兴趣。
爱飞 该用户已被删除
地板
发表于 2015-2-1 16:00:46 | 只看该作者
没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。
再现理想 该用户已被删除
5#
发表于 2015-2-7 07:44:04 | 只看该作者
你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。
愤怒的大鸟 该用户已被删除
6#
发表于 2015-2-21 03:28:22 | 只看该作者
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
莫相离 该用户已被删除
7#
发表于 2015-3-6 19:48:11 | 只看该作者
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
海妖 该用户已被删除
8#
发表于 2015-3-13 07:08:46 | 只看该作者
兴趣是最好的老师,百度是最好的词典。
透明 该用户已被删除
9#
发表于 2015-3-20 16:17:21 | 只看该作者
php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-10 21:05

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表