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中定义网站根目录的常用方法
Aug 08 PHP
关于js与php互相传值的介绍
Jun 25 PHP
CI(CodeIgniter)框架介绍
Jun 09 PHP
分享十款最出色的PHP安全开发库中文详细介绍
Mar 22 PHP
PHP加密解密字符串汇总
Apr 26 PHP
php实现的单一入口应用程序实例分析
Sep 23 PHP
YII Framework框架教程之日志用法详解
Mar 14 PHP
php文件上传及下载附带显示文件及目录功能
Apr 27 PHP
Yii框架实现记录日志到自定义文件的方法
May 23 PHP
php + nginx项目中的权限详解
May 23 PHP
PHP laravel中的多对多关系实例详解
Jun 07 PHP
thinkPHP框架实现的无限回复评论功能示例
Jun 09 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开发负载均衡指南
2010/07/17 PHP
ThinkPHP入口文件设置及相关注意事项分析
2014/12/05 PHP
PHP检测用户语言的方法
2015/06/15 PHP
php无限级评论嵌套实现代码
2018/04/18 PHP
javascript FormatNumber函数实现方法
2008/12/30 Javascript
javascript 防止刷新,后退,关闭
2010/08/07 Javascript
js Math 对象的方法
2013/09/01 Javascript
浅谈 jQuery 事件源码定位问题
2014/06/18 Javascript
将数字转换成大写的人民币表达式的js函数
2014/09/21 Javascript
javascript中AJAX用法实例分析
2015/01/30 Javascript
浅谈Sticky组件的改进实现
2016/03/22 Javascript
[js高手之路]HTML标签解释成DOM节点的实现方法
2017/08/31 Javascript
ubuntu编译nodejs所需的软件并安装
2017/09/12 NodeJs
AngularJs 延时器、计时器实例代码
2017/09/16 Javascript
ES6中新增的Object.assign()方法详解
2017/09/22 Javascript
微信小程序自动客服功能
2017/11/02 Javascript
微信小程序实现动态设置页面标题的方法【附源码下载】
2017/11/29 Javascript
Vue项目使用CDN优化首屏加载问题
2018/04/01 Javascript
浅谈如何使用webpack构建多页面应用
2018/05/30 Javascript
Vue使用vue-area-linkage实现地址三级联动效果的示例
2018/06/27 Javascript
Node批量爬取头条视频并保存方法
2018/09/20 Javascript
Nodejs中的require函数的具体使用方法
2019/04/02 NodeJs
原生JS使用Canvas实现拖拽式绘图功能
2019/06/05 Javascript
flexible.js实现移动端rem适配方案
2020/04/07 Javascript
Javascript如何实现扩充基本类型
2020/08/26 Javascript
[54:10]Spirit vs NB Supermajor小组赛 A组败者组决赛 BO3 第一场 6.2
2018/06/03 DOTA
[01:02:55]CHAOS vs Mineski 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/18 DOTA
Python实现的远程登录windows系统功能示例
2018/06/21 Python
Dlib+OpenCV深度学习人脸识别的方法示例
2019/05/14 Python
全天然狗零食:Best Bully Sticks
2016/09/22 全球购物
捷克领先的户外服装及配件市场零售商:ALPINE PRO
2018/01/09 全球购物
公司营业员的自我评价
2014/03/04 职场文书
买卖合同纠纷代理词
2015/05/25 职场文书
在校生证明
2015/06/17 职场文书
天气温馨提示语
2015/07/14 职场文书
详解Python+OpenCV进行基础的图像操作
2022/02/15 Python