PHP入门

PHP的代码基础与其他语言相同,在之前的文章里都有提及,接下来主要提到的时PHP语言存在的特性。

PHP是服务器端脚本语言,是网站的后台。同时,PHP是一种弱类型语言。这代表着PHP在拥有着与C、C++等语言的共同特性时,不具有其他语言的特定性。即在PHP中,存在基本函数、变量和操作语句块,但变量的声明不需声明变量类型,在PHP中,声明变量类型需要用$。

PHP的第二个特性就是输出语句。在PHP中多用echo进行输出,echo语句可以同时输出多个字符串,其他的输出函数有print和print_r()。

在PHP中,用GET发送的信息会显示在地址栏内,而用POST发送的信息不会显示在地址栏内,也不会限制发送信息的量。

在PHP中,同样存在全局变量和局部变量,存在全局作用域和局部作用域。不同的是,在PHP中调用全局变量需要用到global关键字,例如

<?php
$x=5;
$y=10;
 
function myTest()
{
    global $x,$y;
    $y=$x+$y;
}
 
myTest();
echo $y; // 输出 15
?>

在这段代码中,我们在myTest函数中调用了全局变量x、y,并在函数中对y的值进行处理,此时我们就用到了global关键字调用xy变量。同样,我们也可以定义一个GLOBALS数组

GLOBALS[index]

index用于保存变量的名称。GLABALS数组可以在函数内部访问,也可用于修改全局变量。

在PHP中定义函数时,当一个函数完成后,他的所有局部变量都会被删除,在需要某个局部变量不被删除时,就需要在声明该变量的时候使用static关键字:

<?php
function myTest(){
    static $x=0;
    echo $x;
    $x++;
    echo PHP_EOL;    // 换行符
}
myTest();
myTest();
myTest();
?>

这段代码的运行结果是012
在这段代码中,如果不使用static关键字,每次myTest函数运行时,x的初值都为0。在使用static关键字后,myTest函数运行完成时,变量x不会被删除,而会记录上一次函数运行结束时的值,继续在下一次函数中运用。因此,在整段代码运行结束时,输出的结果为012,变量x的值为

PHP中也存在相同的数据类型,特殊的,在PHP中,bool变量多用true和false表示,只有在弱比较和基本函数语句中可以用0和1来表示。在PHP中,对象作为一种数据类型也可用于存储数据,代码示例如下:

<?php
class Car{
    var $color;
    function __construct($color="green") { $this->color = $color;}
    function what_color() { return $this->color;}
}

function print_vars($obj) {
   foreach (get_object_vars($obj) as $prop => $val) { echo "\t$prop = $val\n";}
}
// 实例一个对象
$herbie = new Car("white");
// 显示 herbie 属性
echo "\therbie: Properties\n";
print_vars($herbie);
?>

这段代码的运行结果为

herbie: Properties color = white

在这段代码中,声明color变量使用的函数是var,这与Pascal语言相同,而this是指向当前对象实例的指针,不指向任何其他对象或类。输出语句中的\t、\n分别表示跳格(类似于计算机中的TAB)和换行。

在PHP中,还有一种特殊的运算符规则——并置,表示为a.b作用为连接两个字符串。同样,在赋值运算符中也存在并置运算,表示为$x.= 作用依然是连接两个字符串

<?php
$a = "Hello";
$b = $a . " world!";
echo $b; //输出“Hello world!” 
$x="Hello";
$x .= " world!";
echo $x; //输出“Hello world!”
?>

在PHP中,同样存在递增递减运算符和预递增预递减运算符,递增递减和预递增预递减的区别为,递增递减先返回变量再+1,预递增预递减先+1再返回变量。

同样,在PHP中,数组也存在运算,存在合并运算(+)、比较运算(==相等、===恒等、!= <>不相等和!==不恒等)。

在PHP7+中,还存在组合比较符(太空船比较符),组合比较符可以轻松实现两变量的比较,不限于数值类数据。$c = $a <=> $b;具体作用为:

  1. 如果 a > a> a>b,则$c的值为1。
  2. 如果 a = = a== a==b,则$c的值为0。
  3. 如果 a < a< a<b,则$c的值为-1。
    代码实例如下:
<?php
// 整型
echo 1 <=> 1; // 0
echo 1 <=> 2; // -1
echo 2 <=> 1; // 1 
// 浮点型
echo 1.5 <=> 1.5; // 0
echo 1.5 <=> 2.5; // -1
echo 2.5 <=> 1.5; // 1
// 字符串
echo "a" <=> "a"; // 0
echo "a" <=> "b"; // -1
echo "b" <=> "a"; // 1
?>

在运算符中,同样也存在优先级比较如图
在这里插入图片描述
在此之外,PHP也存在括号优先运算的规则。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

oblivion_Zzz

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值