php
PHP 脚本以 <?php 开始,以 ?> 结束:
<?php
// PHP 代码
?>
2.PHP 变量规则:
PHP 没有声明变量的命令。
变量以 $ 符号开始,后面跟着变量的名称
变量名必须以字母或者下划线字符开始
变量名只能包含字母数字字符以及下划线(A-z、0-9 和 _ )
变量名不能包含空格
变量名是区分大小写的($y 和 $Y 是两个不同的变量)
<?php
$a='zt ';
$b="yby {$a}"; //双引号可以输出变量
echo($b);
echo'<br/>'; //换行
$c='yby {$a}'; //单引号不行
echo($c);
?>
<?php
$a="adjh";
$b="adw";
$c=$a.''.$b;
echo $a.$b; //直接拼接
echo '<br/>';
echo $c; //先拼接再输出
?>
![拼接](https://img-blog.csdnimg.cn/20210311231656750.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzUxMTc3MDg4,size_16,color_FFFFFF,t_70#pic_center)
数组
<?php
//数组:$arr=['key1'=>value1,'key2'=>value2];
//或者:$arr=[1,2,3]; 会自动复制类同c语言
$shuzu=['zt'=>24,'yby'=>"ss",'lyl'=>48];
//增
$shuzu['syx']=4;
//修
$shuzu['lyl']=4824;
//删需要用unset() 函数
unset($shuzu['yby']);
//输
echo $shuzu['lyl'];
//注意增删改与创建数组不同直接赋值即可,不需要键值对
?>
循环与数组
<?php
//循环
$arr=[1,2,3,4,5,6];
foreach($arr as $value)//数组循环
{
var_dump($value);//输出数据与类型
}
echo '<br/>';
for($i=1;$i<7;$i++) //普通循环
{
echo $i.'<br/>';
}
?>
//其他循环同c语言
-------------------------------!!-------------------------------
类与对象
语法:
//实例化(new) 这个类(类的名字),将对象赋给 $xx 这个变量
//通过 -> 操作符,调用 $xx 对象的 函数 方法
该对象调用成员方法,该对象的成员方法只能操作该对象的成员变量
访问控制
PHP 对属性或方法的访问控制,是通过在前面添加关键字 public(公有),protected(受保护)或 private(私有)来实现的。
public(公有):公有的类成员可以在任何地方被访问。
protected(受保护):受保护的类成员则可以被其自身以及其子类和父类访问。
private(私有):私有的类成员则只能被其定义所在的类访问。
//类
<?php
class ztt
{
//声明属性(函数变量)
public $zt;
//声明方法(函数)
function yby($tt)
{
echo "$tt";
}
}
?>
//对象:
$a = new ztt; //new一个对象
$a->yby("ads"); //调用yby方法输出ads
对this的理解
当一个方法在类定义内部被调用时,有一个可用的伪变量
t
h
i
s
。
this。
this。this 是一个到当前对象的引用。
由于静态方法不需要通过对象即可调用,所以伪变量 $this 在静态方法中不可用
使用方法一:
二:(摘自php手册
1.正常调用,则this也为当前调用的 正常输出
使用::直接调用(静态调用
::的作用
直接属类的方法或属性
一般用于在B类对象中使用A类对象的属性/方法
tip
函数内访问全局变量需要 global 关键字或者使用 $GLOBALS[index] 数组
echo 可以输出一个或多个字符串;
print 只允许输出一个字符串,返回值总为 1;
var_dump($变量)输出数据及类型
PHP 定界符 EOF 的作用就是按照原样,包括换行格式什么的,输出在其内部的东西(无需转义
PHP 脚本可以放在文档中的任何位置。
PHP 文件的默认文件扩展名是 ".php"。
php为弱转化(有sql注入风险
不必向 PHP 声明该变量的数据类型。PHP 会根据变量的值,自动把变量转换为正确的数据类型。
一个类可以有多个不同的对象