php的常量和变量实例详解

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}"; 
 
?> 

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