php基础知识

一:php变量
 
#一、PHP的变量定义:变量用于存储值,比如数字、文本字符串或数组、五中:string /integer /double /array /object 
命名规则:
1、PHP的变量名是区分大小写的。
2、变量名必须以$开头
3、变量名开头可以是下划线
4、变量名不能以数字字符开头
 
<?php 
  $_4site = 'not yet';     // 合法变量名;以下划线开头 
  $a彩霞 = 'aaa';          // 合法变量名;可以用中文 ,但不提倡
         var_dump($a彩霞);  //输出结果为aaa
  $long='meimei'; 
  $$long="caixia";          // 合法变量; 用存放在变量$long里的字符串作为新变量的变量名,等同于变量$meimei; */        
  $4site = 'not yet';      // xxx非法变量名;以数字开头 
?>
 
#二、php变量的赋值
       引用赋值:用不同的名字访问同一个变量内容,当改变其中一个变量的值,另一个也跟着变化
   $str = 'caixiafeifei';
   $pro = & $str;
   $str = "hello,$str";
   var_dump($str);   //输出结果为 hello,caixiafeifei
   var_dump($pro);   //输出结果为 hello,caixiafeifei
        
   #变量默认值
虽然在 PHP 中并不需要初始化变量,但对变量进行初始化是个好习惯。未初始化的变量具有其类型的默认值
- 布尔类型的变量默认值是 FALSE,
- 整形和浮点型变量默认值是零,
- 字符串型变量默认值是空字符串null或者数组变量的默认值是空数组。
*依赖未初始化变量的默认值在某些情况下会有问题,例如把一个文件包含到另一个之中时碰上相同的变量名。
 另外把php.in register_globals 打开是一个主要的安全隐患。使用未初始化的变量会发出E_NOTICE错误,
 但是在向一个未初始化的数组附加单元时不会。
 isset() 语言结构可以用来检测一个变量是否已被初始化。
 
Variable handling 函数array_key_exists

Table of Contents

  • isset ― 检测变量是否设置
  • unset ― 释放给定的变量
  • empty ― 检查一个变量是否为空
  • var_dump ― 打印变量的相关信息
  • var_export ― 输出或返回一个变量的字符串表示
  • print_r ― 打印关于变量的易于理解的信息。
  • serialize ― 产生一个可存储的值的表示
  • settype ― 设置变量的类型
  • strval ― 获取变量的字符串值
  • unserialize ― 从已存储的表示中创建 PHP 的值
  • is_null ― 检测变量是否为 NULL
  • is_array ― 检测变量是否是数组
  • is_bool ― 检测变量是否是布尔型
  • is_callable ― 检测参数是否为合法的可调用结构
  • is_double ― is_float 的别名
  • is_float ― 检测变量是否是浮点型
  • is_int ― 检测变量是否是整数
  • is_integer ― is_int 的别名
  • is_long ― is_int 的别名
  • is_numeric ― 检测变量是否为数字或数字字符串
  • is_object ― 检测变量是否是一个对象
  • is_real ― is_float 的别名
  • is_resource ― 检测变量是否为资源类型
  • is_scalar ― 检测变量是否是一个标量
  • is_string ― 检测变量是否是字符串
  • array_key_exists(mixed key, array search) 检查给定的键名或索引是否存在于数组中
  • debug_zval_dump ― Dumps a string representation of an internal zend value to output
  • doubleval ― floatval 的别名
  • floatval ― 获取变量的浮点值
  • get_defined_vars ― 返回由所有已定义变量所组成的数组
  • get_resource_type ― 返回资源(resource)类型
  • gettype ― 获取变量的类型
  • import_request_variables ― 将 GET/POST/Cookie 变量导入到全局作用域中
  • intval ― 获取变量的整数值
*各种数据类型  函数输出比较
         
         
         
         
表P.1.用 PHP 函数对 $x 的比较

表达式 gettype() empty() is_null() isset() boolean :
if($x)

$x
= ""; string TRUE FALSE TRUE FALSE
$x
= NULL NULL TRUE TRUE FALSE FALSE
var $x; NULL TRUE TRUE FALSE FALSE
$x 尚未定义 NULL TRUE TRUE FALSE FALSE
$x
= array(); array TRUE FALSE TRUE FALSE
$x
= false; boolean TRUE FALSE TRUE FALSE
$x
= true; boolean FALSE FALSE TRUE TRUE
$x
= 1; integer FALSE FALSE TRUE TRUE
$x
= 42; integer FALSE FALSE TRUE TRUE
$x
= 0; integer TRUE FALSE TRUE FALSE
$x
= -1; integer FALSE FALSE TRUE TRUE
$x
= "1"; string FALSE FALSE TRUE TRUE
$x
= "0"; string TRUE FALSE TRUE FALSE
$x
= "-1"; string FALSE FALSE TRUE TRUE
$x
= "php"; string FALSE FALSE TRUE TRUE
$x
= "true"; string FALSE FALSE TRUE TRUE
$x
= "false"; string FALSE FALSE TRUE TRUE
#变量范围

变量范围

 
         
         
         
         
变量的范围即它定义的上下文背景(也就是它的生效范围)。大部分的 PHP 变量只有一个单独的范围。
这个单独的范围跨度同样包含了 include 和 require 引入的文件。例如:

<?php
  $a
= 1;
  include
'b.inc';
?>
这里变量 $a 将会在包含文件 b.inc 中生效:

<?php
$a
= 1; /* global scope */

function Test()
{
echo $a;
/* reference to local scope variable */
}

Test();
?>
这个脚本不会有任何输出,因为 echo 语句引用了一个局部版本的变量 $a,而且在这个范围内,它并没有被赋值。
 
#三、单引号与双引号
         用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会。当然,只有当你不需要在字符串中包含变量时才可以这么做。

你可能感兴趣的:(PHP,职场,基础知识,休闲)