php备忘录(一)

  • A+
所属分类:php

(1)PHP 语句和 PHP 变量都是区分大小写的。

(2)PHP 没有声明变量的命令。在第一次赋值给它的时候被创建。

(3)PHP 是一门弱类型语言,会根据变量的值,自动把变量转换为正确的数据类型。

(4)全局变量和局部变量

全局变量在函数外声明, 局部变量在函数内声明。默认情况下,全局变量只能在函数外使用,局部变量只能在函数内使用。如:

$x=5; // 全局变量
function my_test()
{
    $y=10; // 局部变量
    echo "x = $x";  //输出为: x = 
    echo "y = $y";  //输出为: y = 10
}

my_test();

echo "x = $x";  //输出为: x = 5
echo "y = $y";  //输出为: y = 

如果要在一个函数中访问一个全局变量,需要使用 global 关键字。(即global 关键字用于函数内访问全局变量。)

$x=5;
$y=10;

function my_test()
{
global $x,$y;
$y=$x+$y;
}

my_test();
echo $y; // 输出 15

PHP 将所有全局变量存储在一个名为 $GLOBALS[index] 的数组中。 index 保存变量的名称。这个数组可以在函数内部访问,也可以直接用来更新全局变量。

$x=5;
$y=10;

function my_test()
{
    $GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y'];
}

my_test();
echo $y;   //输出15

(5)static作用域

说其静态,是因为它不会随着函数的调用和退出而发生变化。即上次调用函数的时候,如果我们给静态变量赋予某个值的话,下次函数调用时,这个值保持不变。

静态变量可以在任何可以申请的地方申请,一旦申请成功后,它将不再接受其他的同样申请。

所有的全局变量都是静态变量,而局部变量只有定义时加上类型修饰符static,才为局部静态变量。

局部静态变量和 普通的局部变量,作用域一样,都不能在函数外引用。

静态变量例子如下:

function my_test()
{
    static $x=0;      //第一次申请时,会为静态变量赋值,第二次申请时,不再赋值。
    echo $x;
    $x++;
}

my_test();    //输出: 0
my_test();    //输出: 1
my_test();    //输出: 2

(6)输出

PHP中动态输出HTML内容,是通过print 和 echo 语句来实现的,在实际使用中, print 和 echo 两者的功能几乎是完全一样。两者少有的区别是:

echo()    无返回值,效率更高,一次可以输出多个字符串。

print()    有返回值,成功,返1,false,返0。 一次只能输出一个字符串。

echo "This", " is", " apple.";  //(一次可以输出多个)输出:This is apple.
print "This is apple.";         //(一次只能输出一个)输出:This is apple.

print_r: 打印变量,如果是 array,将会按照一定格式显示键和元素。print_r() 将把数组的指针移到最后边。使用 reset() 可让指针回到开始处。

var_export:跟print_r和var_dump类似,但是很少用。

var_dump:此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。

var_dump和print_r的区别:var_dump返回表达式的类型与值而print_r仅返回结果,相比调试代码使用var_dump更便于阅读。

(7) php的常量。

常量在整个脚本中都可以使用。常量在定义后,默认是全局变量,可以在整个运行的脚本的任何地方使用。在函数内使用常量,可以直接使用,不需要使用globle关键字了。

常量只能包含标量数据(boolean、integer、float和string)。

define("NAME", "sherwin");                  //定义常量,默认大小写敏感
define("PROVINCE", "shandong", true);       //定义常量,大小写不敏感
define("CITY", "jinan", false);             //定义常量,小写敏感

function myTest() {
    echo NAME;                              //常量的使用,不需要加$,也不需要使用global关键字
    echo PROVINCE;
    echo CITY;
}

myTest();    // 输出常量

(8)php 运算符

PHP 递增/递减运算符

运算符 名称 描述
++ x 预递增 x 加 1,然后返回 x
x ++ 后递增 返回 x,然后 x 加 1
-- x 预递减 x 减 1,然后返回 x
x -- 后递减 返回 x,然后 x 减 1

PHP 比较运算符

运算符 名称 描述 实例
x == y 等于 如果 x 等于 y,则返回 true 5==8 返回 false
x === y 恒等于 如果 x 等于 y,且它们类型相同,则返回 true 5==="5" 返回 false
x != y 不等于 如果 x 不等于 y,则返回 true 5!=8 返回 true
x <> y 不等于 如果 x 不等于 y,则返回 true 5<>8 返回 true
x !== y 不恒等于 如果 x 不等于 y,或它们类型不相同,则返回 true 5!=="5" 返回 true
x > y 大于 如果 x 大于 y,则返回 true 5>8 返回 false
x < y 小于 如果 x 小于 y,则返回 true 5<8 返回 true
x >= y 大于等于 如果 x 大于或者等于 y,则返回 true 5>=8 返回 false
x <= y 小于等于 如果 x 小于或者等于 y,则返回 true 5<=8 返回 true
$x=100; 
$y="100";

var_dump($x == $y);   //bool(true)  不比较类型
var_dump($x === $y);  //bool(false)  比较类型
var_dump($x != $y);   //bool(false) 不比较类型
var_dump($x !== $y);  //bool(true)   比例类型

PHP 数组运算符

x + y 集合 x 和 y 的集合(原来的x,y数组不变,如果有重复的key,取x中的元素)
x == y 相等 如果 x 和 y 具有相同的键/值对,则返回 true
x === y 恒等 如果 x 和 y 具有相同的键/值对,且顺序相同类型相同,则返回 true
x != y 不相等 如果 x 不等于 y,则返回 true
x <> y 不相等 如果 x 不等于 y,则返回 true
x !== y 不恒等 如果 x 不等于 y,则返回 true

三元运算符

$username = isset($test) ? $test : 'nobody';



  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: