一、变量

字母 char , string 类型

数字 int,float类型

数组:

需要注意的是

1.变量名 区分大小写

2.数字不能当变量名开头


echo "var_dump就相当于 Python 中的  type() 想要更详细的数据类型可以使用 var_dump( ) 嵌套  gettype(var) ";

echo "<br/>" ;echo "<br/>" ;echo "<br/>" ;

var_dump(gettype($a));


$c = array(1,2,"www.baidu.com",2.333);

echo "<br/>" ;echo "<br/>" ;echo "<br/>" ;

#  echo $c ;  注意:PHP不可以用 echo 输出数组

print_r($c);

echo "————————————————————————————————————————" ;
// echo "<br/>" ;echo "<br/>" ;echo "<br/>" ;
echo "<pre>"; var_dump($c) ;

echo "<pre>";  的作用就是 打印数组输出 保持原格式


echo "————————————————————————————————————————————————————————————————";
echo "<br/>" ;
echo "数组的输出有两种方法 1. var_dump() 2. print_r() ";
echo "<pre>"; print_r($c); echo "<pre>"; var_dump($c);

可以看出,var_dump 比 print_r 更加强大

二、运算符

加  减  乘  除  取余

++   - -

比较运算符

>  <  >=  <=  !=

这里需要注意的是  ===

===  是比较数据的值和类型

==  只是比较数据的 值 ,不会比较数据的类型 

逻辑运算符

与&&     或 ||     非!

PHP字符串运算符 就是   . 

三、三大控制结构

if(){

}else{

}

while(){

}

for(i=0;i<10;i++){

}

do{

}while( )

do-while和while的区别就是 while 先执行在 判断  do-while是先判断在执行

break     continue

四、字符串双引号和单引号的区别

<?php
header("Content-type: text/html; charset=utf-8"); #设置编码格式 ,不设置会出错 !! $a = "baidu.com"; $b = 'www.$a'; #双引号会对字符串里面的变量进行解释说明,,,而单引号不会,单引号只会显示不会解释(不仅对变量是,对格式符比如 \n \t 也是这样)
$c = "www.$a"; echo "a为::: $a"; echo "<br/>$b";
echo "<br/>$c"; ?>

字符串常用函数 (格式见财年教程)
1.strlen() 查看字符串的长度
2.strpos() 查找字符串首次出现的位置
3.str_replace() 字符串替换
4.左截取 右截取
5.strchr() 截取函数 (取文件后缀名的时候可能会用到!)
6.split() 正则分割
7.explode() 用一个字符串分割成一个数组
$website = "www.baidu.com";
$arrstr = explode(".", $website);
echo "<pre>";
print_r($arrstr);
8.与explode() 相反的是 implode ()
implode() 的作用是 将一个数组的值连成一个字符串
9.trim() 消除输入的空格;(trim是可以带参数的,如果带参数,可以消除 \n \r 这些制表符)
10.addslashes() 防SQL注入的函数,自动过滤,将单引号 转变为 '\
11.htmlspecialchars() 防xss的函数 ,将尖括号转换

 

 五、数组

<?php

header("Content-type: text/html; charset=utf-8");   #设置编码格式 ,不设置会出错 !!

$arr = array(4,9,3,"www.badicu",'false');

echo "<pre>";

print_r($arr);

echo "<pre>";

var_dump($arr);
// 除此之外,还可以单独定义 键:值 对 $arr1 = array(
"aa" => "first",
"bb" => 10 ,
"xx" => "北京"
);
var_dump($arr1); // 数组的遍历
// 1.直接 for循环也行
// 2.foreach循环 foreach ($arr1 as $key => $value) {
echo $key."—————".$value.'<br/>';
} ?>

数组的增删改查

$arr = array("a","2333","www.baidu","3.14");

//数组的增加

$arr[]="ff";
echo "<pre>";
print_r($arr);
echo "<hr>"; //数组的删除 unset($arr[1]);
echo "<pre>";
print_r($arr);
echo "<hr>"; //数组的更改
$arr[1] = "changed!";
echo "<pre>";
print_r($arr);

1.array_key_exist() 用于检测给定的 键名 或索引 是否存在于 数组中
2.in_array() 与上面的相反,是判断value值是否在数组里面
3.array_keys() 用于返回数组的所有的 key 值

六、函数和超全局变量

①无参函数

②有参函数

七、超全局变量

echo "<pre>";
var_dump($GLOBALS);

<?php
header("Content-type: text/html; charset=utf-8"); #设置编码格式 ,不设置会出错 !! function getAdd($a,$b){
return $a + $b ;
} if (empty($_GET)) {
echo "没有传值!!!";
}else{
$x = $_GET["a"];
$y = $_GET["b"]; $c = getAdd($x,$y);
echo $c ;
} ?>

PHP基础再练习的更多相关文章

  1. JAVA基础再回首(二十五)——Lock锁的使用、死锁问题、多线程生产者和消费者、线程池、匿名内部类使用多线程、定时器、面试题

    JAVA基础再回首(二十五)--Lock锁的使用.死锁问题.多线程生产者和消费者.线程池.匿名内部类使用多线程.定时器.面试题 版权声明:转载必须注明本文转自程序猿杜鹏程的博客:http://blog ...

  2. Vue.js-09:第九章 - 组件基础再探(data、props)

    一.前言 在上一章的学习中,我们学习了 Vue 中组件的基础知识,知道了什么是组件,以及如何创建一个全局/局部组件.不知道你是否记得,在上一章中,我们提到组件是一个可以复用的 Vue 实例,它与 Vu ...

  3. (转载)ACM训练计划,先过一遍基础再按此拼搏吧!!!!

    ACM大量习题题库 ACM大量习题题库 现在网上有许多题库,大多是可以在线评测,所以叫做Online Judge.除了USACO是为IOI准备外,其余几乎全部是大学的ACM竞赛题库. USACO ht ...

  4. 网络基础-再议TCP

    以前只是知道3次握手和4次挥手,但是对于其在连接和断开时的各个状态却不是很懂,今天就来看一下握手和挥手时的状态转换图: 1.三次握手和四次挥手时的状态转换图: 实线表示应用程序: 应用层首先发SYN的 ...

  5. python基础----再看property、描述符(__get__,__set__,__delete__)

    一.再看property                                                                          一个静态属性property ...

  6. C#基础再学习

    本次观看C#中级教程视频进行对C#一些基础的再度学习,加深印象. 1.对于错误和异常. 错误可能是语法错误也可能是逻辑错误.可以通过断点进行调试. 断点快捷键F9. 异常,通过try catch捕获, ...

  7. JAVA基础再回首

    http://blog.csdn.net/m366917/article/details/51559031

  8. Git 基础再学习之:git checkout -- file

    首先明白一下基本概念和用法,这段话是从前在看廖雪峰的git教程的时候摘到OneNote的 准备工作: 新建了一个learngit文件夹,在bash中cd进入文件夹,用以下命令创建一个仓库. $ git ...

  9. Java基础再复习(继承、多态、方法内部类**、HashMap用法**、参数传递**)

    ###继承: package com.shiyan; public class Animal { public int legNum; //动物四肢的数量 //类方法 public void bark ...

随机推荐

  1. 如何在Camtasia中对录制视频进行动画编辑

    生活中,我们时时会遇到要剪辑视频不知道哪一款软件比较简单:当我们想要录制电脑屏幕时,网上的方法也总是不奏效.那是否有一款软件可以同时兼备这两种功能呢?今天我给大家推荐的便是一款同时兼备这两种功能的软件 ...

  2. MathType中怎么编辑韩文字符

    用MathType编辑公式,所涉及到符号与字母一般都是英文字母与数字,或者使用希腊字母,当然还有很多使用中文的情况.但是不仅如此,我们在使用MathType时,除了这些字符之外,还可以输入韩文或者日文 ...

  3. 加密PDF文件,提高文件安全性

    PDF文件的一大优点是可以设置文件的安全性,不仅可以通过证书加密的形式加密文件,还可以通过pdfFactory来设置密码的形式加密文件. 我们可以通过两种方式开启"PDF加密"来为 ...

  4. 唯一key的生成规则,可自己视情况改动

    <?php function getMillisecond() { $time = explode ( " ", microtime ()); $time = $time[1 ...

  5. jenkins运行错误解决办法

    本地搭建好jenkis服务器,运行然后登陆上管理后台 构建好运行命令,然后进行构建出现如下错误说没有python运行环境 ,本地已经配置好python环境,并且终端能正常运行. 解决方法:jenkin ...

  6. 再论<? extends T>和<? super T>

    参考: https://www.cnblogs.com/drizzlewithwind/p/6100164.html Java 泛型 <? super T> 中 super 怎么 理解?与 ...

  7. Goland 2020.2.x 激活码永久破解教程 (最新Goland激活码!2020.11.26亲测可用!)

    在2020.11.26 Goland的用户们又迎来了一次更新,这就导致很多软件打开时候就提示Goland激活码已经失效,码小辫第一时间给各位分享了关于最新Goland激活破解教程! goland已经更 ...

  8. DRAM三种刷新方式(转载)

    设DRAM中电容的电荷每2ms就会丢失,所以2ms内必须对其补充.补充电荷是按行来进行的,为了[全部]内存都能保住电荷,必须对[所有]的行都得补充. 假设刷新1行的时间为0.5μs(刷新时间是等于存取 ...

  9. 【C++】C++之Lambda表达式

    目录 一.前言 二.Lambda表达式格式说明 2.1 完整的Lambda表达式格式 2.2 常见的Lambda表达式格式 2.3 lambda 表达式捕获列表 三.示例 3.1 STL的sort函数 ...

  10. .NET Core/.NET 5.0 析构函数依然有效?

    前言 最近看到小伙伴在.NET Core中用到了析构函数,不禁打一疑问,大部分情况下,即使在.NET Framework中都不会怎么用到析构函数,我想在.NET Core中是否还依然有效呢?随着时间推 ...