PHP基础语法

发布时间 2024-01-07 17:19:42作者: P1ggy

<?php开头,以?>结尾,语句以;结尾
在php中,所有关键词和函数名类名均不区分大小写
变量名对大小写敏感

php是后端语言,可以与html混合起来

<html>
<p>this is html+php</p>
<html>
<?php
	echo "Hello World";
?>

不能再php代码中出现html语言,要分开标签写

服务器中两个重要日志

access_log error_log

<?php
	$color = 'red';
	$Color = 'blue';
	echo $color;
	echo $Color;
?>
注释

单行注释
//#
多行注释

/*
*/
变量

变量以$开头
以字母或下划线开头
只能是字母数字下划线
不必声明变量类型

echo
echo"<br>"
#换行
String
<?php
$num = 10;
echo 'xiaoming jin nian $num age<br>';
echo "xiaoming jin nian $num age<br>";
?>

![[Pasted image 20240106135115.png]]
当一个字符串由纯文本组成,尽量用单引号

变量类型
<?php
$a = 12;
$b = 34.56;
$c = '123';
$d = true;
$e = null;
$f = array('apple', 'banana', 'cherry');
var_dump($a,$b,$c,$d,$e,$f);
?>

![[Pasted image 20240106135506.png]]

运算符
+-*/%
<?php
$txt1 = "hello";
$txt2 = "world".$txt1;
echo $txt2;
?>

![[Pasted image 20240106140311.png]]
*自增和自减规则和c语言类似

比较运算符
==
=== 全等于
!=
!== 不全等于
<?php
$x = '123';
$y = 123;
var_dump($x,$y);
echo "<br>";
if($x == $y)
{
	echo "$x dengyu $y";
}
if($x === $y)
{
	echo "$x quandengyu $y";
}
?>

![[Pasted image 20240106142547.png]]

逻辑运算符
and
or
xor //有且仅有一个为真,返回真
&&
||
!
if语句

0为假,非0为真

<?php
if(判断条件)
{
控制块
}
?>

三元运算符

condition?value of true :value of false
数组

数组的每个实体都有两项:键和值
PHP数组分为索引数组和关联数组

索引数组

通过键获取值
语法为

value = 数组名[key]

注意:键值是置于[]中

<?php
$arr = array('a','b','c');
echo $arr[0];
?>

我们还可以为一个个赋值(代码略,比较麻烦)

<?php
$arr = array('a','b','c');
echo $arr[1];
echo "<br />";
echo sizeof($arr);
echo "<br />";
echo count($arr);
?>
<?php
$arr = array('audi','BMW','vovo','bech');

for($i = 0;$i<sizeof($arr);$i++)
{
echo $arr[$i];
echo '<br>';
}
?>

关联数组

应用array()函数,键与值之间是=>符号

<?php
$age = array('Bill'=>35,'Steve'=>37,'Peter'=>43);

echo "Peter is " . $age['Peter'] . " years old.";
echo "Bill is " . $age['Bill'] . " years old.";
echo "Steve is " . $age['Steve'] . " years old.";
echo $age['Bill']; // 输出 35
echo $age['Steve']; // 输出 37        
echo $age['Peter']; // 输出 43
?>

或者直接为数组各元素赋值

$age['Bill']=35;
$age['Steve']=37;
$age['Peter']=43;

如需遍历关联数组,可以用foreach循环

<?php
$age = array('Bill'=>35,'Steve'=>37,'Peter'=>43);
foreach($age as $key => $value)
{
    echo '姓名='.$key.' 年龄='.$value.'<br>';
}
?>
二维数组及多维数组
<?php
$cars = array
(
    array('volvo',100,96),
    array('BMW',300,33),
    array('Saab',200,55),
    array('Land Rover',150,11)
);
echo $cars[0][0];
echo '<br />';
echo $cars[0][1];
echo '<br />';
echo $cars[2][0];
?>
<?php
    $arr = array(
        array('a','b'),
        array('c','d'),
        array('e','f'),
        'you'
    );
    echo $arr[2][0];

在里面继续穿插数组,就变成三位数组、四维数组......

数组基本操作:
  1. 通过赋值,增加数组元素
$array = array("age"=>"25");
$array["name"] = "ICQ";
  1. 使用array_push函数追加数组元素(入栈)
  • 语法:array_push(array,value1,value2...)
  • 函数的功能是在数组末尾插入一个或多个元素,用以证书为键的数组
  • 举例
<?php
$a = array("red","yellow");
print_r($a);
echo '<br>';
array_push($a,'green','blue');
print_r($a);
#print_r 可以直接输整个数组
?>
  1. 增加和删除数组元素

  2. 数组排序:

sort()函数
排序成功为True,失败为False

<?php
$a = array(1,3,6,2,5);
$array = sort($a);
print_r($array);
echo "<br>";
print_r($a);
?>
php函数
function 函数名称(参数1,参数2)
{
//代码块
return 返回值;
}
<?php
function test()
{
       echo "Hello World!";
}
test();
function add($a, $b)
{
    return $a + $b;
}
$num = add(1,4);
echo $num;
?>

默认值

<?php
function add($a,$b = '1')
{
echo $a + $b; 
}

add(1,2);
add(2);
?>
全局变量

函数外部定义的变量在函数内引用需要调用

global $x,$y;
PHP函数库
PHP的类
<?php
class Person
{
    var $name;
    function say()
    {
        echo "Hello, I am ".$this->name."\n";
    }
}
$Tom = new Person(); //实例化对象
$Tom->name = "Tom"; //给对象属性赋值
$Tom->say(); //调用对象方法
?>

![[Pasted image 20240107165408.png]]

创建一个和多个对象只需要多次使用new函数

this 关键字

是用来范围跟当前对象中的对象属性和对象方法的系统变量
是一种对象中特殊的一种使用构造函数和变量的方法
注意:$this只能在当前对象中使用