PHP语法小结之基础和变量


Posted in PHP onNovember 22, 2015

最近有个H5项目的需求,需要服务端,考察过后决定用PHP实现一个HTTP服务端,于是开始重温PHP语法,顺便记录一下要点,以便随时重温。内容摘抄自w3school的PHP手册,并按照自己的理解重新进行了整理。

PHP是什么?

PHP 是 "PHP Hypertext Preprocessor" 的首字母缩略词
PHP 代码在服务器上执行,而结果以纯文本返回浏览器
PHP 文件能够包含文本、HTML、CSS 以及 PHP 代码
PHP 文件的后缀是 ".php"
PHP 脚本可放置于文档中的任何位置。
PHP 文件通常包含 HTML 标签以及一些 PHP 脚本代码。

PHP基础语法

脚本以 结尾
语句以分号结尾(;)
代码块的关闭标签也会自动表明分号(因此在 PHP 代码块的最后一行不必使用分号)。
// 或者 # 表示单行注释
/**/是多行注释
变量大小写敏感
用户定义的函数、类和关键词大小写不敏感(例如 if、else、echo 等等)都对

PHP常量

常量一旦被定义就无法更改或撤销定义
常量贯穿整个脚本是自动全局的
设置常量使用 define() 函数,它使用三个参数:

首个参数定义常量名称
第二个参数定义常量值
(可选)第三个参数规定常量名是否大小写敏感,默认是 false。

<?php
  define("GREETING", "Welcome!");
  echo GREETING;  //大小写敏感的常量

  define("Hello", "Welcome!", true);
  echo hello;   //大小写不敏感的常量
?>

有效的常量名是以字符或是下划线开通

PHP变量

变量弱类型
变量以 $ 符号开头,其后是变量的名称,如 $x=5;
函数之外声明的变量拥有 Global 作用域,只能在函数以外进行访问。
函数内部声明的变量拥有 LOCAL 作用域,只能在函数内部进行访问。
global 关键词用于访问函数内的全局变量。要做到这一点,请在(函数内部)变量前面使用 global 关键词:
实例1:

<?php
 $x=5;           // 全局作用域
 function myTest() {
  $y=10;         // 局部作用域
  echo "变量 x 是:$x";  // 不输出
  echo "变量 y 是:$x";  // 输出
 } 

 myTest();

 echo "变量 x 是:$x";   // 输出
 echo "变量 y 是:$x";   // 不输出
?>

实例2:

<?php
 $x=5;
 $y=10;

 function myTest() {
  global $x,$y;
  $y=$x+$y;
 }

 myTest();
 echo $y;         // 输出 15
?>

PHP Static关键词

通常,当函数完成/执行后,会删除所有变量。不过,有时我需要不删除某个局部变量。实现这一点需要更进一步的工作。
要完成这一点,请在您首次声明变量时使用 static 关键词:

<?php
 function myTest() {
  static $x=0;
  echo $x;
  $x++;
 }

 myTest();  // 输出0
 myTest();  // 输出1
 myTest();  // 输出2
?>

然后,每当函数被调用时,这个变量所存储的信息都是函数最后一次被调用时所包含的信息。
注释:该变量仍然是函数的局部变量。

PHP 相关文章推荐
如何获得PHP相关资料
Oct 09 PHP
如何使用动态共享对象的模式来安装PHP
Oct 09 PHP
PHP通过COM使用ADODB的简单例子
Dec 31 PHP
mysql时区问题
Mar 26 PHP
php 数组二分法查找函数代码
Feb 16 PHP
PHP中的string类型使用说明
Jul 27 PHP
php的list()的一步操作给一组变量进行赋值的使用
May 18 PHP
Smarty的配置与高级缓存技术分享
Jun 05 PHP
PHP面向对象——访问修饰符介绍
Nov 08 PHP
PHP的APC模块实现上传进度条
Oct 27 PHP
[原创]php使用curl判断网页404(不存在)的方法
Jun 23 PHP
php 读写json文件及修改json的方法
Mar 07 PHP
PHP传值到不同页面的三种常见方式及php和html之间传值问题
Nov 19 #PHP
PHP中使用array函数新建一个数组
Nov 19 #PHP
PHP新建类问题分析及解决思路
Nov 19 #PHP
php有效防止同一用户多次登录
Nov 19 #PHP
带你了解PHP7 性能翻倍的关键
Nov 19 #PHP
php curl模拟post请求和提交多维数组的示例代码
Nov 19 #PHP
phpStudy访问速度慢和启动失败的解决办法
Nov 19 #PHP
You might like
php的POSIX 函数以及进程测试的深入分析
2013/06/03 PHP
10个实用的PHP正则表达式汇总
2014/10/23 PHP
PHP 记录访客的浏览信息方法
2018/01/29 PHP
Dojo之路:如何利用Dojo实现Drag and Drop效果
2007/04/10 Javascript
web页面数据展示新想法(json)
2010/06/08 Javascript
Jquery+WebService 校验账号是否已被注册的代码
2010/07/12 Javascript
javascript中的作用域scope介绍
2010/12/28 Javascript
js判断IE6/IE7/FF的代码[XMLHttpRequest]
2011/02/16 Javascript
js兼容的placeholder属性详解
2013/08/18 Javascript
jQuery插件实现表格隔行换色且感应鼠标高亮行变色
2013/09/22 Javascript
html5+javascript制作简易画板附图
2014/04/25 Javascript
jQuery大于号(&gt;)选择器的作用解释
2015/01/13 Javascript
javascript实现 百度翻译 可折叠的分享按钮列表
2015/03/12 Javascript
js变量提升深入理解
2016/09/16 Javascript
详解用函数式编程对JavaScript进行断舍离
2017/09/18 Javascript
禁止弹窗中蒙层底部页面跟随滚动的几种方法
2017/12/07 Javascript
利用js实现前后台传送Json的示例代码
2018/03/29 Javascript
js中数组常用方法总结(推荐)
2019/04/09 Javascript
[03:46]显微镜下的DOTA2第七期——满血与残血
2014/06/20 DOTA
用Python实现QQ游戏大家来找茬辅助工具
2014/09/14 Python
python基于pyDes库实现des加密的方法
2017/04/29 Python
Python使用剪切板的方法
2017/06/06 Python
python3下载抖音视频的完整代码
2019/06/05 Python
python命令行工具Click快速掌握
2019/07/04 Python
Mac 使用python3的matplot画图不显示的解决
2019/11/23 Python
python GUI库图形界面开发之PyQt5布局控件QHBoxLayout详细使用方法与实例
2020/03/06 Python
scrapy利用selenium爬取豆瓣阅读的全步骤
2020/09/20 Python
纯DOM+CSS3实现简单的小风车动画
2016/09/27 HTML / CSS
西班牙在线光学:Visual-Click
2020/06/22 全球购物
民生工程实施方案
2014/03/22 职场文书
农民工工资保障承诺书
2015/05/04 职场文书
大学生学生会工作总结2015
2015/05/26 职场文书
智慧人生:永远不需要向任何人解释你自己
2019/08/20 职场文书
MySQL创建管理LIST分区
2022/04/13 MySQL
Java8 Stream API 提供了一种高效且易于使用的处理数据的方式
2022/04/13 Java/Android
第四次工业革命,打工人与机器人的竞争
2022/04/21 数码科技