美文网首页PHP
基础语法

基础语法

作者: 追逐_chase | 来源:发表于2019-01-03 08:26 被阅读17次
PHP.jpg

变量

  • 变量:它是内存中用于临时存储数据的一个空间,这个空间的名字就是变量
    • 变量名必须区分大小写,其余函数名,方法名,类名都不区分大小写
    • 变量以$开头 只能包含字母,数字,下划线,只能以字母,下划线开头
// <?php?> 是php的语法标签格式
<?php
$v1 = 1;
$v2 = 2;
$result = $v1 + $v2;
// echo 是返回值
echo $result ;
//删除变量
// $v3 = 3;
unset($v3);
?>
  • 可变变量
//可变变量

$v = "age";
$age = 20;
//此时 $v 被解析成 age
echo $v,"<br/>";

//$v被解析成 age 编程 $age 被解析成20
echo $$v,"<br/>"
  • 预定义变量
$_GET       用于表单提交 get方式提交
$_POST     用于表单提交 post方式提交的数据
$_REQUEST 用于接受get方式提交,post方式提交的数据
$_SERVER    记录服务端和客户端的相关信息
$_COOKIE    一种会话技术
$_SESSION   一种会话技术
$_FILES          用于记录用户上传的文件
$GLOBALS    用于记录全局变量

//内存原理
1.栈区: 保存的是变量名,引用,读取速度快
2.堆区:复杂数据存储存储,比如:数组,对象
3.数据段:简单数据:整形,浮点型,布尔
4.代码段:存储的是源代码的对应的机器指令
5.输出缓存:只要遇到输出命令: echo,print输出的数据 先寸放 在 输出缓存中

image.png
  • 执行过程


    image.png
  • 传值
    • 赋值传值
<?php
//1.赋值传值
$v1 = 10;
$v2 = $v1;

echo $v1;
>
  • 引用传值
<?php

//2.引用传值
$v3 = 10;
//$v4引用的是$v3的地址 
$v4 = &$v3;
$v4 = 20;
echo $v3;
?>

常量

  • 定义之后不允许修改,也不允许删除
//语法1
// define("常量名","常量值");  可以在分支结构语句中
define("gg","70");
echo gg;

//语法2 用 const声明常量。不可以在分支结构语句中

const ll = 99;
echo ll;

//获取所有的常量
$result =  get_defined_constants();
print_r($result);

  • 魔术常量
<?php
__FILE__  用于获取当前文件完整的路径和文件名
__DIR__  用于获取当前文件的路径
__LINE__  用于获取当前代码的行数
__FUNCTION__ 用于获取当前函数的函数名
__METHOD__ 用于获取当前方法的方法名
__CLASS__ 用于获取当前类的类名
__NAMESPACE__ 用于获取当前空间的空间名


?>

数据类型

标量数据类型

int整形
float浮点型
string 字符串行
boolen 布尔

  • 字符函数

    • trim() 去空格
    • strlen() 获取字符串的长度,但是不能正确处理中文字符串
    • mb_strlen() 获取字符串的长度,能正确处理中文字符串
  • 其中在字符串中会遇到一些特殊的符号,我们需要用到转义符

\’  单引号
\"   双引号
\t tab符
\r 回车符
\n 换行符
\\  \
\$  $
复合数据类型

数组 类型
对象 类型

特殊的数据类型

null
resource 资源类型

  • var_dunp()函数可以输出数据类型和数据值

var_dump(false); 结果是:bool(false)

数据类型的转换和判断
  • 当参与运算的2个数据类型不同失败,php会自动进行转换
$num = 100;
$num1 = "100yuan";
echo $num * $num1;

  • 强制转换
(float)变量  转换为浮点型
(array)变量   转换数组
(object)变量  转换为对象
(string)变量  转换为浮字符串
(boolean)变量  转换为布尔
  • 数据类型的判断
<?php
//判断是不是 int float strong bool类型
is_int()
is_float()
is_string()
is_bool()
// 判断是不是标量的数据 类型(就是上面的4中类型 int,float,string,bool)
is_scalar() 
//判断对象 数组类型
is_object()
is_array()

//判断null 和 资源类型
is_null()
is_resource()
//用于判断变量是否设置值
isset()
//判断变量是为空
//此处的空等效于返回布尔false的值都被empty认为是空
//如果是空 返回true
empty()

?>

流程控制

  • 顺序结构
  • 分支结构
  • if分支

if (condition) {
    # code...
}else {
    # code...
}

  • 多分支
switch ($variable) {
    case 'value':
        # code...
        break;
    
    default:
        # code...
        break;
}
  • 循环
  • for
  • while
文件引入
  • require

  • require(文件名)

  • require_once(文件名)

  • include

  • include(文件名)

  • include_once(文件名)

区别:include在引入文件时,如果引入的文件不存在则会报错,但程序还会继续向下执行
require 在引入文件时,如果引入的文件不存在则会报错,会终端程序的执行
include_once,require_once每次引入文件时,都会检查索要引入的文件之前有没有被引入过,如果有引入过就不会再引入

相关文章

  • 【Android】知识点汇总,坚持原创ing

    Android基础 Java基础 Java基础——Java内存模型和垃圾回收机制 语法基础 语法基础——C语法基础...

  • java

    语法基础1.1 java初体验(语法基础)1.2 变量和常量(语法基础)1.2 变量和常量(语法基础)1.4 流程...

  • 软帝学院:80道java基础部分面试题(四)

    Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语法,集...

  • 快速上⼿ Kotlin

    快速上⼿ Kotlin 基础语法 函数基础语法 与 Java 代码互调 Java 与 Kotlin 交互的语法变化...

  • Java面试题知识点

    1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...

  • Java初级面试题

    1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...

  • 高考英语基础语法单句语法填空

    高考英语基础语法单句语法填空

  • Go语言基础语法--注释、基础结构2

    章节 GO语言基础语法--注释、基础结构(重要) 1.GO语言基础语法---注释、基础结构 基础结构注意事项 源文...

  • Swift5.1——前言

    主要是针对Swift5.1,基础语法,和内部剖析。 基础语法 基础语法 流程控制 函数 枚举 可选项 为什么选择S...

  • JS基础和WebAPIs的关联性

    学习ECMAscript标准规定的基本语法掌握JS基础语法只学习JS基础做不了网页交互效果学习JS基础语法是为了后...

网友评论

    本文标题:基础语法

    本文链接:https://www.haomeiwen.com/subject/hgmclqtx.html