php的常量和变量实例详解


Posted in PHP onJune 27, 2017

php的常量和变量实例详解

【PHP在命令行下接收参数】

如果在命令行调试php,传入的参数通过$argv获取,注意其中包含了文件名这一个元素,数组中元素的个数通过$argc获取。

【可变变量】

指的是变量的名称可变,变量的标识符可以由另一个变量的值来代替。

例如:第二个语句是为argv1这个变量赋值。

<?php 
 
  $varName = 'argv1'; 
  $$varName = 'value1'; 
  var_dump($argv1); 
 
?>

【常量】

使用define定义,不可删除和修改,调用时直接写名称。define还有三参数的版本,第三个参数代表是否大小写不敏感,默认为false。

<?php 
 
  define('pi',3.14); 
  echo pi; 
 
?>

技巧:先检查常量有没有被定义再定义,使用defined函数:

<?php 
 
  if(!defined('pi')) 
    define('pi',3.14); 
  else 
    echo 'pi has been defined<br>'; 
 
?>

对于有特殊符号的常量,需要使用constant函数来调用,注意这时常量名应该加引号,例如:

<?php 
 
  if(!defined('= =')) 
    define('= =','puzzled'); 
  else 
    echo 'pi has been defined<br>'; 
   
  echo constant('= ='); 
 
?>

获取已经定义的所有常量:

<?php 
   
  var_dump(get_defined_constants()); 
 
?>

【魔术变量】

__LINE__获取当前所在的行,__FILE__获取当前路径。

一个应用:

利用str_replace函数替换文件中的文件名为路径+文件名来保证文件路径变化仍可以访问。

str_replace(<要查找的值>,<替换为的值>,<被搜索的字符串>,<替换计数变量(可选)>);

<?php 
   
  define('ROOT',str_replace('a.php','',__FILE__)); 
   
  echo ROOT; 
 
?>

【进制】

在数字前加0是八进制,加0x是十六进制。

【字符串类型】

双引号与单引号均可,但是双引号可以解析内部变量,但是单引号效率高。

双引号解析变量:{ }可以保证分开变量名与其它部分。

<?php 
 
  $name = "test"; 
  echo "username is {$name}"; 
 
?>

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

PHP 相关文章推荐
把PHP安装为Apache DSO
Oct 09 PHP
为查询结果建立向后/向前按钮
Oct 09 PHP
ADODB的数据库封包程序库
Dec 31 PHP
比较时间段一与时间段二是否有交集的php函数
May 31 PHP
PHP文件操作实现代码分享
Sep 01 PHP
php实现多维数组中每个单元值(数字)翻倍的方法
Feb 16 PHP
php实现四舍五入的方法小结
Mar 03 PHP
在php中设置session用memcache来存储的方法总结
Jan 14 PHP
详解Yii2.0 rules验证规则集合
Mar 21 PHP
php对xml文件的增删改查操作实现方法分析
May 19 PHP
PHP设计模式之工厂模式实例总结
Sep 01 PHP
PHP操作Redis常用命令的实例详解
Dec 23 PHP
Zend Framework框架中实现Ajax的方法示例
Jun 27 #PHP
PHP用continue跳过本次循环中剩余代码的注意点
Jun 27 #PHP
PHP API接口必备之输出json格式数据示例代码
Jun 27 #PHP
利用PHP获取访客IP、地区位置、浏览器及来源页面等信息
Jun 27 #PHP
简单谈谈PHP面向对象之标识对象
Jun 27 #PHP
什么是PHP文件?如何打开PHP文件?
Jun 27 #PHP
PHP面向对象之工作单元(实例讲解)
Jun 26 #PHP
You might like
php实现通过soap调用.Net的WebService asmx文件
2017/02/27 PHP
php-msf源码详解
2017/12/25 PHP
phpcmsv9.0任意文件上传漏洞解析
2020/10/20 PHP
javascript 图片上传预览-兼容标准
2009/06/01 Javascript
JQuery.Ajax之错误调试帮助信息介绍
2013/07/04 Javascript
Jquery解析Json格式数据过程代码
2014/10/17 Javascript
基于jQuery实现网页进度显示插件
2015/03/04 Javascript
JS创建对象几种不同方法详解
2016/03/01 Javascript
JavaScript数据存储 Cookie篇
2016/07/02 Javascript
详解angularJs中关于ng-class的三种使用方式说明
2017/06/02 Javascript
深入理解Vue 单向数据流的原理
2017/11/09 Javascript
详解使用VUE搭建后台管理系统(vue-cli更新至3.0)
2018/08/22 Javascript
Vue-component全局注册实例
2018/09/06 Javascript
Vue配置marked链接添加target=&quot;_blank&quot;的方法
2019/07/19 Javascript
vue源码中的检测方法的实现
2019/09/26 Javascript
vue npm install 安装某个指定的版本操作
2020/08/11 Javascript
解决vue安装less报错Failed to compile with 1 errors的问题
2020/10/22 Javascript
[01:00:14]2018DOTA2亚洲邀请赛 4.6 淘汰赛 VP vs TNC 第三场
2018/04/10 DOTA
[46:55]完美世界DOTA2联赛决赛 FTD vs Phoenix 第三场 11.08
2020/11/11 DOTA
Python读取指定目录下指定后缀文件并保存为docx
2017/04/23 Python
Python对文件和目录进行操作的方法(file对象/os/os.path/shutil 模块)
2017/05/08 Python
Python3调用微信企业号API发送文本消息代码示例
2017/11/10 Python
python MNIST手写识别数据调用API的方法
2018/08/08 Python
selenium+python自动化测试之鼠标和键盘事件
2019/01/23 Python
python解析xml简单示例
2019/06/21 Python
Scrapy框架实现的登录网站操作示例
2020/02/06 Python
详解用Pytest+Allure生成漂亮的HTML图形化测试报告
2020/03/31 Python
PyQt5实现画布小程序
2020/05/30 Python
在python中list作函数形参,防止被实参修改的实现方法
2020/06/05 Python
Python实现验证码识别
2020/06/15 Python
python 两种方法删除空文件夹
2020/09/29 Python
巴西Mr. Cat在线商店:购买包包和鞋子
2019/09/08 全球购物
2014两会优秀的心得体会范文
2014/03/17 职场文书
最美乡村教师观后感
2015/06/11 职场文书
Python中tkinter的用户登录管理的实现
2021/04/22 Python
Spring Boot 实现敏感词及特殊字符过滤处理
2021/06/29 Java/Android