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 相关文章推荐
discuz安全提问算法
Jun 06 PHP
libmysql.dll与php.ini是否真的要拷贝到c:\windows目录下呢
Mar 15 PHP
php列出一个目录下的所有文件的代码
Oct 09 PHP
apache php模块整合操作指南
Nov 16 PHP
PHP对文件夹递归执行chmod命令的方法
Jun 19 PHP
用PHP代码给图片加水印
Jul 01 PHP
帝国CMS留言板回复后发送EMAIL通知客户
Jul 06 PHP
php实现登录tplink WR882N获取IP和重启的方法
Jul 20 PHP
PHP 中 DOMDocument保存xml时中文出现乱码问题的解决方案
Sep 19 PHP
php监测数据是否成功插入到Mysql数据库的方法
Nov 25 PHP
详解使用php调用微信接口上传永久素材
Apr 11 PHP
深入学习微信网址链接解封的防封原理visit_type
Aug 15 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
解决File size limit exceeded 错误的方法
2013/06/14 PHP
CI框架AR数据库操作常用函数总结
2016/11/21 PHP
PHP ADODB实现分页功能简单示例
2018/05/25 PHP
swoole_process实现进程池的方法示例
2018/10/29 PHP
JQuery与JSon实现的无刷新分页代码
2011/09/13 Javascript
Jquery 表格合并的问题分享
2011/09/17 Javascript
Jquery实现Div上下移动示例
2014/04/23 Javascript
JS实现支持多选的遍历下拉列表代码
2015/08/20 Javascript
jQuery动态加载css文件实现方法
2016/06/15 Javascript
JavaScript实战之菜单特效
2016/08/16 Javascript
vue在使用ECharts时的异步更新和数据加载详解
2017/11/22 Javascript
Vue.js组件使用props传递数据的方法
2019/10/19 Javascript
[52:08]DOTA2上海特级锦标赛主赛事日 - 3 败者组第三轮#2Fnatic VS OG第一局
2016/03/05 DOTA
[47:21]Liquid vs TNC Supermajor 胜者组 BO3 第一场 6.4
2018/06/05 DOTA
[34:10]Secret vs VG 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.24
2019/09/10 DOTA
编写Python爬虫抓取豆瓣电影TOP100及用户头像的方法
2016/01/20 Python
wxpython中自定义事件的实现与使用方法分析
2016/07/21 Python
python记录程序运行时间的三种方法
2017/07/14 Python
python实现关键词提取的示例讲解
2018/04/28 Python
解决Python 命令行执行脚本时,提示导入的包找不到的问题
2019/01/19 Python
详解opencv Python特征检测及K-最近邻匹配
2019/01/21 Python
python使用selenium实现批量文件下载
2019/03/11 Python
浅析使用Python搭建http服务器
2019/10/27 Python
基于python实现雪花算法过程详解
2019/11/16 Python
Tensorflow实现将标签变为one-hot形式
2020/05/22 Python
python使用建议与技巧分享(一)
2020/08/17 Python
python中random.randint和random.randrange的区别详解
2020/09/20 Python
CSS3 实现时间轴动画
2020/11/25 HTML / CSS
国外平面设计第一市场:99designs
2016/10/25 全球购物
施华洛世奇澳大利亚官网:SWAROVSKI澳大利亚
2017/01/06 全球购物
美国在线购买空气净化器、除湿器、加湿器网站:AllergyBuyersClub
2021/03/16 全球购物
《望洞庭》教学反思
2014/02/16 职场文书
简单的项目建议书模板
2014/03/12 职场文书
毕业生如何写自荐信
2014/03/26 职场文书
python基础详解之if循环语句
2021/04/24 Python
超级详细实用的pycharm常用快捷键
2021/05/12 Python