最新的Web开发教程
 

PHP 5个变量


变量是"containers" ,用于存储信息。


创建(Declaring) PHP变量

在PHP中,变量开始$符号,后面是变量的名称:

<?php
$txt = "Hello world!";
$x = 5;
$y = 10.5;
?>
运行示例»

上面的语句执行后,变量$txt将持有的价值Hello world! 中,变量$ x将保持值5,而变量$ y将保持值10.5。

Note:当您在文本值赋值给一个变量,把周围的值引号。

注:与其他编程语言,PHP已经声明一个变量没有命令。 它创建你先一个值分配给它的那一刻。

变量看成是用于存储数据的容器。


PHP变量

变量可以具有短的名称(like x and y)或更描述性的名称(age, carname, total_volume)

对于PHP变量规则:

  • 变量$符号开头,后面是变量名
  • 变量名必须以字母或下划线开始
  • 变量名称不能以数字开头
  • 变量名只能包含字母数字字符和下划线(Az, 0-9, and _ )
  • 变量名称是区分大小写($age and $AGE are two different variables)

请记住,PHP变量名是区分大小写的!


输出变量

PHP的echo语句经常被用来将数据输出到屏幕上。

下面的例子将展示如何输出文本和变量:

<?php
$txt = "w3ii.com";
echo "I love $txt!";
?>
运行示例»

下面的例子将产生的输出作为上面的例子相同的:

<?php
$txt = "w3ii.com";
echo "I love " . $txt . "!";
?>
运行示例»

下面的例子将输出两个变量的总和:

<?php
$x = 5;
$y = 4;
echo $x + $y;
?>
运行示例»

注意:您将了解更多关于echo语句,以及如何将数据输出到屏幕在下一章。


PHP是一种松散类型的语言

在上面的例子中,注意我们没有告诉PHP的数据类型的变量。

PHP自动变量转换为正确的数据类型,这取决于它的值。

在其它语言如C,C ++和Java,程序员必须使用它之前声明的名称和变量的类型。


PHP变量的作用域

在PHP中,变量可以在脚本中任何声明。

一个变量的范围是其中变量可以被引用/使用的脚本的一部分。

PHP有三种不同的变量范围:

  • 本地
  • 全球
  • 静态的

全局和局部范围

声明的变量outside的功能具有全局范围和只能函数外部访问:

<?php
$x = 5; // global scope

function myTest() {
    // using x inside this function will generate an error
    echo "<p>Variable x inside function is: $x</p>";
}
myTest();

echo "<p>Variable x outside function is: $x</p>";
?>
运行示例»

声明的变量within一个函数有一个局部范围,只能在该函数内访问:

<?php
function myTest() {
    $x = 5; // local scope
    echo "<p>Variable x inside function is: $x</p>";
}
myTest();

// using x outside the function will generate an error
echo "<p>Variable x outside function is: $x</p>";
?>
运行示例»

你可以有不同的功能同名的局部变量,因为局部变量只在声明它们的功能识别。


PHP global关键字

全局关键字用于从一个函数内部访问一个全局变量。

要做到这一点,使用变量之前全球关键字(函数内):

<?php
$x = 5;
$y = 10;

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

myTest();
echo $y; // outputs 15
?>
运行示例»

PHP还存储在名为$ GLOBALS [阵列中的所有全局变量index 。 该指数保持可变的名称。 该阵列还从函数内访问,可用于直接更新全局变量。

上面的例子中可以改写如下:

<?php
$x = 5;
$y = 10;

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

myTest();
echo $y; // outputs 15
?>
运行示例»

PHP static关键字

通常情况下,当完成一个功能/执行,所有的变量都被删除。 不过,有时我们需要一个局部变量不被删除。 我们需要再就业。

要做到这一点,使用static关键字当你第一次声明变量:

<?php
function myTest() {
    static $x = 0;
    echo $x;
    $x++;
}

myTest();
myTest();
myTest();
?>
运行示例»

然后,每个函数被调用时,该变量将仍然有它从上一次调用函数包含的信息。

Note:该变量仍然是局部的功能。