文章目录
PHP1.0:PHP基本介绍、语法规则、变量、作用域、global、static
1、什么是PHP?
PHP(Hypertext Preprocessor)超级文本预处理语言,它是脚本语言,它是免费的,广泛用于网站的开发。除了可以做网站之外,它还可以做移动APP的接口,且适合做服务端脚本,比如说Linux上就可以用PHP写一些脚本语言。
2、第一个PHP程序:hello world!
<!DOCTYPE html>
<html>
<body>
<?php
echo "hello world !";
?>
</body>
</html>
执行后如下:
整个运行过程是这样的:
3、PHP基本语法:
(1)PHP以 <?php 开头 ,以?> 结尾。
(2)PHP文件的默认扩展名为 “.php”。
(3)PHP以分号来分割语句。
(4)变量以$符号开始,后面跟着变量的名称: $test = “hello!”;
(5)PHP的注释:
①单行注释://、#
②多行注释:/* 这是注释的内容 */
4、PHP变量:
<?php
$age=1;
$y=2;
$z=$age+$y;
echo $z; //结果为3
?>
规则 | 举例 |
---|---|
变量名必须以字母或下划线字符开始 | $hello、 $_world |
变量名只能包含字母、数字、下划线 | A-z、0-9、_ |
变量名不能包含空格 | |
变量名区分大小写 | $X ≠ $x |
PHP不需要先定义变量,当第一次赋值时便被创建 且PHP会根据变量的值,自动把变量转换为正确的数据类型 | |
赋值字符、文本型给变量时需要加单引号或双引号 | ‘hello’、“world” |
5、局部和全局作用域:
<?php
$x=1; // 全局变量
function A()
{
$y=2; // 局部变量
echo "<h1>测试函数内变量:</h1>"; //h1标题
echo " x : $x";
echo "<br>"; //输出换行
echo " y : $y";
}
A();
echo "<p>测试函数外变量:</p>"; //p:标签
echo " x : $x";
echo "<br>";
echo " y : $y";
?>
测试结果:
当我们在A()函数内部调用时,它只能输出局部变量的值,不能输出函数外的值。且函数外的值无法在函数内使用,如果要在一个函数中访问一个全局变量,需要使用global关键字。之后我们在A()函数外输出两个变量的值,函数将会输出全局变量的值,而不输出局部变量的值。
6、global关键字:
<?php
$x=1;
$y=2;
function B()
{
global $x,$y;
$y=$x+$y;
}
B();
echo $y; // 输出 3
?>
PHP 将所有全局变量存储在一个名为 $GLOBALS[index] 的数组中。 index 保存变量的名称。这个数组可以在函数内部访问,也可以直接用来更新全局变量。
<?php
$x=1;
$y=2;
function B()
{
$GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y'];
}
B();
echo $y; // 输出 3
?>
这样做就可以直接调用全局变量了。
7、Static作用域:
当一个函数完成时,由于是局部变量,因此它们通常会被删除。但是,如果你希望局部变量不要被删除时,可以使用static关键字:
有static:
<?php
function myTest()
{
static $x=0;
echo $x;
$x++;
echo PHP_EOL; // 换行符
}
myTest();
myTest();
myTest();
/*运行结果为:
0
1
2
*/
?>
没有static:
<?php
function myTest()
{
$x=0;
echo $x;
$x++;
echo PHP_EOL; // 换行符
}
myTest();
myTest();
myTest();
/*运行结果为:
0
0
0
*/
?>
8、echo、print输出语句:
echo 和 print 区别:
echo 可以输出一个或多个字符串
print 只允许输出一个字符串,返回值总为1,print 或 print() 都可以
echo输出的速度比print快,echo 没有返回值,print有返回值1。
9、EOF使用说明:
PHP EOF是一种在命令行shell和程序语言里定义一个字符串的方法。
使用概述:
(1)以<<<EOF标记开始,以EOF结束标记结束,在末了EOF位置后需要加分号
(2)EOF可以用任意其它字符代替,只需保证结束与起始标识一致
(3)结束标识必须顶格独自占一行(即必须从行首开始,前后不能衔接任何空白和字符
(4)位于开始标记和结束标记之间的变量可以被正常解析,但是函数不可以。在 PHP EOF 中,变量不需要用连接符 . 或 , 来拼接
示例:
<?php
$test="hello world!";
$a= <<<A
"abc"$test
"123"
A;
// 结束需要独立一行且前后不能空格
echo $a;
/*运行结果:
"abc"hello world!
"123"
*/
?>