PHP基础再练习
一、变量
字母 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基础再练习的更多相关文章
- JAVA基础再回首(二十五)——Lock锁的使用、死锁问题、多线程生产者和消费者、线程池、匿名内部类使用多线程、定时器、面试题
JAVA基础再回首(二十五)--Lock锁的使用.死锁问题.多线程生产者和消费者.线程池.匿名内部类使用多线程.定时器.面试题 版权声明:转载必须注明本文转自程序猿杜鹏程的博客:http://blog ...
- Vue.js-09:第九章 - 组件基础再探(data、props)
一.前言 在上一章的学习中,我们学习了 Vue 中组件的基础知识,知道了什么是组件,以及如何创建一个全局/局部组件.不知道你是否记得,在上一章中,我们提到组件是一个可以复用的 Vue 实例,它与 Vu ...
- (转载)ACM训练计划,先过一遍基础再按此拼搏吧!!!!
ACM大量习题题库 ACM大量习题题库 现在网上有许多题库,大多是可以在线评测,所以叫做Online Judge.除了USACO是为IOI准备外,其余几乎全部是大学的ACM竞赛题库. USACO ht ...
- 网络基础-再议TCP
以前只是知道3次握手和4次挥手,但是对于其在连接和断开时的各个状态却不是很懂,今天就来看一下握手和挥手时的状态转换图: 1.三次握手和四次挥手时的状态转换图: 实线表示应用程序: 应用层首先发SYN的 ...
- python基础----再看property、描述符(__get__,__set__,__delete__)
一.再看property 一个静态属性property ...
- C#基础再学习
本次观看C#中级教程视频进行对C#一些基础的再度学习,加深印象. 1.对于错误和异常. 错误可能是语法错误也可能是逻辑错误.可以通过断点进行调试. 断点快捷键F9. 异常,通过try catch捕获, ...
- JAVA基础再回首
http://blog.csdn.net/m366917/article/details/51559031
- Git 基础再学习之:git checkout -- file
首先明白一下基本概念和用法,这段话是从前在看廖雪峰的git教程的时候摘到OneNote的 准备工作: 新建了一个learngit文件夹,在bash中cd进入文件夹,用以下命令创建一个仓库. $ git ...
- Java基础再复习(继承、多态、方法内部类**、HashMap用法**、参数传递**)
###继承: package com.shiyan; public class Animal { public int legNum; //动物四肢的数量 //类方法 public void bark ...
随机推荐
- 思维导图iMindMap怎么做大型项目管理
在大型企业中,有许多大型而复杂的项目,你要考虑内外部因素.期限以及你要达成的目标等等,所以我们要进行项目管理.下面小编教你怎么用iMindMap思维导图进行项目管理. iMindMap有一个工作区,以 ...
- 鸿蒙OS的系统调用是如何实现的? | 解读鸿蒙源码
本文将首先带您回顾"系统调用"的概念以及它的作用,然后从经典的Hello World开始,逐行代码层层分析--鸿蒙OS的系统调用是如何实现的. 写在前面 9月10号 华为开发者大会 ...
- 循序渐进VUE+Element 前端应用开发(29)--- 高级查询条件的界面设计
在系统模块中的业务列表展示里面,一般我们都会在列表中放置一些查询条件,如果是表字段不多,大多数情况下,放置的条件有十个八个就可以了,如果是字段很多,而这些条件信息也很关键的时候,就可能放置很多条件,但 ...
- MySql学习笔记--详细整理--下
目录 索引 测试索引 索引原则 权限管理和备份 备份 规范数据库设计 三大范式 JDBC JDBC程序 Statement对象 工具类实现 sql注入 PreparedStatement对象 事务 数 ...
- @Transactional自调用问题
- day4(JWT安装配置)
1.JWT安装配置 1.1安装JWT pip install djangorestframework-jwt==1.11.0 1.2 syl/settings.py配置jwt载荷中的有效期设 # j ...
- webpack系列:webpack小老弟接了个简单活
webpack深入浅出系列:进阶篇 前沿,本篇文章的讲解思路是以webpack的五大核心为线索,以webpack对象为第一视角来讲述(以前记得看过一个文笔非常厉害的技术啊婆写的,非常有趣.然后我就想着 ...
- moviepy用VideoFileClip加载视频时报UnicodeDecodeError: codec cant decode ,No mapping character 错误
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 昨天处理视频时出现了解码错误,通过修改ffmpeg ...
- 超详细讲解mysql存储过程中的in/out/inout
存储过程 大概定义:用一个别名来描述多个sql语句的执行过程. 最简单 delimiter // create PROCEDURE p1() begin select * from userinfo; ...
- 性能测试学习之路 (二)jmeter详解(jmeter执行顺序 && 作用域 && 断言 && 事务 &&集合点 )
1 Jmeter 工作区介绍 jmeter工作区分为3个部分:目录树.测试计划编辑区域.菜单栏. 2 Jmeter 执行顺序规则 Jmeter执行顺序规则如下: 配置元件 前置处理器 定时器 采样器s ...