开始PHP,常量/变量与内存间的关系--传值
一.常见的PHP代码嵌入式方式,与html结合
要注意:文件名后缀必须形如xxx.php否则html将无法解析
二.php脱离html代码独立工作,没有其他代码
不需要借助Apache工作,只需要php引擎;通过php.exe去运行php文件
方式2带来的问题是:只能由服务器访问,而方式一,则可以由客户端访问
三.PHP基础
常见形式:<?php ?>
脚本语言形式:<script language="php"></script>,易与<script type="javascript"></script>混淆
短标签形式:<??>默认php已经不支持短标签,要在php.ini中找到short_open_tag并改为on,由于http.conf加载了php.ini所以有必要重启Apache----注意该操作会引起Apache(2.2)短暂的故障
古老的PHP版本形式:<?asp?>需要开启php.ini的asp_tags=On
PHP注释---两大类:三种-----//, #, /**/ 凡是有业务逻辑的地方,必须要有注释!!!但凡动态网站,无外乎浏览器与数据库服务器交互数据,拿到数据需要一个容器来承载,这就用到了.....
四.PHP变量
变量命名原则-----以$开头,
以字母,数字,下划线组成,
不能以数字开头;
可以是中文;命名方式---驼峰命名CoachNAME;带下划线Coach_Name
是一种弱类型语言,变量可以为任意类型而不需要指定变量类型
输出变量 echo, print_f, var_dump();删除变量unset
常量----不能变化值的量:define,直接使用常量名;
常量的应用场景----例如描述网站路径根目录和下辖文件夹的关系;数学中常量的应用
命名规则 不能以$开头,通常全部使用大写字母,其他命名规则与变量一致
<?php define('cpcsnickname','小松鼠'); echo cpcsnickname; ?>
内存空间分为 栈,堆,代码区,静态区(全局变量区)
全局变量分为:常量区,变量区,静态变量区
栈的特点:速度快,占内存空间小;堆的特点:速度慢,占的空间大
以运行 echo “喜欢陈培昌”为例;内存的变或过程如下:
$ispeak='喜欢陈培昌';
1.把'喜欢陈培昌' 读入内存(放入全局变量中的变量区----开辟内存空间,而开辟内存就一定有内存地址)
2.在栈内开辟一块内存空间存放变量名ispeak
3.把'喜欢陈培昌'对应的地址赋值给栈内对应的变量名上
常量:值放在全局变量区的常量区,变量区的值可以写入多次,而常量区只能写一次。
PHP脚本执行结束----PHP引擎将php代码最后一行代码执行结束,
以上图为例:PHP实际上开辟了4块内存空间,当脚本执行完毕后,PHP占据的内存会被释放,无论变量和常量(可以想想毕业后人走屋空的例子),操作系统会回收所有内存
注意!!!在结束符后还有空行,那么php将把后面的空行解析成html标签中的空行,所以如果没有后续的php代码行,最好不用结束符,以免浪费带宽!!!
注意!不是所有错误提示都精确到行
常量比变量的定义更加松散,有时候常量命名的很不正经,就得用如下方式访问
<?php
define('-_-','小松鼠');
echo constant('-_-');
?>
最新文章
- 关于Advertising Campaign
- easy ui datagrid 让某行复选框不能选中
- SD卡驱动分析(一)
- FLEX 特效
- 创投女王徐新:如何迅速做到细分市场第一(FW)
- [转载]破解TexturePacker加密资源
- Linux命令(1)-scp
- Tick and Tick
- TortoiseSVN 安装中文语言包,SVN中文语言包
- JSP-tag文件使用介绍
- NOIP2014酱油记
- JavaScript 伪造 Referer 来路方法
- HIVE的常用操作(HQL)语句
- java.lang.IllegalArgumentException: Request header is too large
- Node 框架接入 ELK 实践总结
- 天津联通新兴ICT业务工程师面试经历
- RGB颜色名称与色值对应表
- Alpha冲刺7
- svn 更新
- Arria10调试问题集之——480转成270中DDR4 IP重新生成的问题
热门文章
- SqlSessionFactoryBuilder、SqlSessionFactory、SqlSession
- 字符串——AC自动机
- mysql——插入、更新、删除数据(示例)
- jmeter-ERROR o.a.j.p.j.c.DataSourceElement: JDBC data source already defined for: 报错原因
- Oracle密码过期(the password has expired)
- Largest Number At Least Twice of Others
- linux下显示完整路径,linux下显示绝对路径
- MySql在win10上的安装(压缩版)
- Maven简单项目及命令使用
- 从多种角度看[BZOJ 1061] [NOI 2008]志愿者招募(费用流)