PHP基础知识学习笔记

PHP基础

php语言标记

标记使用
<?php ?> 
<? ?>ASP风格
<% %>ASP风格
<?=$variablename ?>嵌入纯变量
<script language="php"> </script> 

指令分隔符

在php代码最后一段可以不用分号结束,因为?>代表一个分号。

注释

注释符:多行:/**/ 单行:#或//

变量

变量声明前加”$“符号用“=”直接赋值。

<?php
    $a = 100;
    $b = "string";
    $c = true;
    $d = 99.99;
​
    $key1 = $a;
    $key2 = $b;
​
    $a= $b = $c = $d = "value";
    echo "$a";
    $var = '';
    if(empty($var)) {
        echo "$var is either 0 or not set at all";
    }
​
    if(!isset($var)){
        echo "$var is not set at all";  
    }
​
    unset($var);
    
    if(isset($var)) {
        echo "This var is set so I will print.";
    }
?>

php变量名严格区分大小写。不能以数字开头,中间无空格,不能使用点分开,不能使用标识符。

可变变量

将变量拿来声明变量

<?php
    $h="hello";
    $$h="world"; //${$h}和$hello值均为"world"
?>

变量引用赋值

$a="php";
$b=&$a; //此时$b与$a的值相同,且不管改变a或b,另一个也随之改变,但$a与$b存储在不同内存地址。

 

变量的类型

php为弱类型检查语言,变量类型由数据决定,不同于c语言等需要先定义。

类型种类类型名称
标量类型boolen
标量类型integer
标量类型float
标量类型string
复合类型array
复合类型object
特殊类型resource
特殊类型NULL

整形八进制数字前加"0",十六进制加"0x";最大为2147483647超出范围解释为float。

浮点数范围1.7E-38~1.7E+38。

字符串中php不会解释用单引号括起来的变量。

双引号会解释其内的变量等要指定名字的变量就用{}括起来 ,在字符串中常用的转义字符

转义字符含义
\n换行
\r回车
\t水平制表符
\反斜线
$美元符号
\"双引号
\[0-7]{1,3}正则表达式-匹配八进制符号表示的字符
\x[0-9A-Fa-f]{1,2}正则表达式-匹配十六进制符号表示的字符

定界符

使用举例:打印数据 echo <<<EOT 字符串,变量,转义字符双引号等 EOT;

变量赋值$string=<<<EOT 字符串,变量,转义字符双引号等 EOT;

<?php
    $name="MyName";
    
    echo <<<EOT
        my name is $name.'='\n
        \my name is 'dd'.
EOT;
?>

数组

使用array()语言结构新建一个array。

<?php
​
    $arr = array("foo" => "bar",12 => true);
    print_r($arr);
​
    echo $arr["foo"];
​
    echo $arr[12];
?>

对象

对象由一组属性值和一组方法构成,属性表明状态,方法表明对象的功能。

<?php
    class person {
            var $name;
        
            function say() {
                    echo "Doing foo";
            }
    }
    $p=new person;
    $p->name="Tom";
    $p->say();
    echo "$p->name";
?>

资源类型

使用var_dump()来输出资源类型,例如

$dir_handle=opendir("c:\\WINDOWS\\Fonts");
var_dump($dir_handle);

NULL类型

NULL表示一个变量没有值,有几种情况1.将变量赋值为NULL 2.声明的变量尚未被赋值 3.被unset函数销毁的变量。

伪类型

常用伪类型

名称说明
mixed说明一个参数可以接受多种类型。gettype()接受所有类型,str_replace()接受字符串和数组
number说明可以是浮点和整型
callback接受用户自定义的函数为参数。call_user_function(),usort()。

自动类型转换

布尔值----->整型0/1

NULL值----->整型0

int和float----->integer会转化为float

字符和数值(integer和float)----->字符会转化为数字

强制类型转换

变量前加括号

格式功能
(int)转换为整型
(bool)转换成布尔
(float)(double)(real)转换为浮点
(string)转换成字符串
(array)转换成数组
(object)转换为对象

使用函数转换

<?php
    $str="123.45abc";
    $a=intval($str);  //获取整型值123
    $b=floatval($str);  //获取浮点型123.45
    $c=strval(123.45)  //获取字符串值
    settype($str, "integer")  //改变变量本身值为int,123
    settype($str, "string")  //改变变量本身值为string
    
?>

字符转换为数字时,值是其中数值型字符串组成。NULL转换为字符串时为空。

变量类型测试

函数介绍
is_bool()判断是否为布尔型
is_int(),is_integer,is_long()判断是否为整型
is_float(),is_double(),is_real()判断是否为浮点型
is_string()判断是否为字符串
is_array()判断是否为数组
is_object()判断是否为对象
is_resource()判断是否是资源类型
is_null()判断是否为空
is_scalar()判断是否为标量
is_numeric()判断是否是任何类型的数字或数字字符串
is_callable()判断是否是有效函数名

使用方法

<?php
    $bool=True;
    $str="foo";
    $int = 12;
    echo gettype($bool);
    var_dump($str);
    if(is_string($boo))
    {
        echo "String:$bool";
    }
?>

常量

用于一些数据计算中固定的值,作用域为全局且不能被更改。常量声明只能为(int,float,str,bool),常量不用理会变量范围规则而在所有地方定义和访问且其前面没有$符号。

常量的声明

boolean define(string name,mixed value [,bool case_insensitive]);

常量使用define声明

<?php
    define("a",100);  //声明名为a的常量值为100
    define("b","hello",true);  //声明为b的常量且区分大小写
?>

系统中预定义常量

常见预定义变量表

常量名说明
PHP_OSUNIX/WINNT执行php解析的操作系统命令
PHP_VERSION5.2.6等服务器版本
TRUETRUE
FALSEFALSE
NULLNULL空值
DIRECTORY_SEPARATOR\或/根据操作系统决定目录分割符
PATH_SEPARATOR;或:根据操作系统决定环境变量目录分割符
E_ERROR1错误,脚本运行终止
E_WARNING2警告
E_PARSE4解析错误
E_NOTICE8非关键错误
M_PI3.1415926535898圆周率

PHP中魔术常量

常量名介绍
_FILE_当前文件名 
_LINE_当前行数 
_FUNCTION_当前函数名 
_CLASS_当前类名 
_METHOD_当前对象的方法名 

预定义和魔术常量简单的使用方法

<?php
    echo "当前操作系统:".PHP_OS."<br>";
    echo "当前行号:"._LINE_."<br>";
?>

PHP中的运算符

算术运算符

运算符意义
+加法运算
-减法/取负运算
*乘法运算
/除法运算
%求模运算
++累加1
--递减1

$a++:先执行表达式再递增。

++$a:先递增再执行表达式的值。

字符串运算符

字符串运算符只有"."。为连接运算符,返回其左右参数连接的字符串。

<?php
    $name="Tom";
    $age=27;
    $height=1.71;
    echo "my name: ".$name.",my age: ".$age.",my height: ".$height."m."."<br>"; 
?>

赋值运算符

运算符意义
=将一个值或表达式的值赋值给变量
+=将变量与所赋的值相加后的结果再赋值给变量
-=将变量与所赋的值相减后的结果再赋值给该变量
*=将变量与所赋的值相乘后的结果再赋值给该变量
/=将变量与所赋的值相除后得结果再赋值给变量
%=将变量与所赋的值求模后的结果再赋值给该变量
.=将变量与所赋的值相连后的结果再赋值给该变量
<?php
    $a=$b=100;
    $a+=10;
    $b-=10;
​
    $result = "result is:";
    $result .= "\$a+10=${a}";
    $result .= "\$b-10=$b";
    echo $result;
?>

逻辑运算符

php中的逻辑运算符

运算符描述说明 
and或&&逻辑与均为TRUE则返回TRUE,否则为FALSE 
or或||逻辑或当均为FALSE时返回FALSE,否则为TRUE 
not或!逻辑非当为TRUE时返回FALSE,否则返回TRUE 
xor逻辑异或当只有一个为TRUE则返回TRUE 

位运算符

php中位运算符

运算符描述说明
&按位与均为1,才为1
|按位或均为0,才为0
^按位异或不同为1
~按位非将二进制数据1变0,0变1
<<左移将操作数在内存中的二进制数据左移指定位数
>>右移将操作数在内存中的二进制数据右移指定位数

示例

$c=$a | $b

其他运算符

运算符描述示例
?:三元运算符提供简单的逻辑判断$a<$b ? ​c=0
''反引号为执行运算符,尝试将反引号内信息作为外壳命令来执行,并将输出返回$a='ls -al'
@错误控制运算符,在表达式前,则表达式忽略错误信息@表达式
=>数组下标指定键=>值
->成员访问符号,访问对象中成员属性或方法对象->成员
instanceof类型运算符测定一个给定的对象是否来自指定的对象类对象instanceof类名

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值