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 ...
随机推荐
- 「CEOI2013」Board
description 洛谷P5513 solution 用一个二进制数维护这个节点所处的位置,那么"1"操作就是这个数\(*2\),"2"操作就是这个数\(* ...
- zabbix的搭建及操作(4)实现邮件,钉钉,微信报警
实现邮件报警 网页版邮箱中开启 POP3/SMTP/IMAP 生成授权码并记录 Server端安装配置邮件服务器 1.Yum安装邮件服务器 yum -y install mailx dos2unix ...
- leetcode151. 翻转字符串里的单词
给定一个字符串,逐个翻转字符串中的每个单词. 示例 1:输入: "the sky is blue"输出: "blue is sky the"示例 2:输入: & ...
- LIS问题$n log_2 n$做法(二分优化)
#include<bits/stdc++.h> using namespace std; const int inf=1e9+5; const int maxn=1e6+5; int n, ...
- python应用(3):启用集成开发工具pycharm
之前写了个python程序给自己用,写代码时用的是macvim(vim的一种),macvim是个编辑工具,由于我已经设置过对python等各种语言的支持特性,所以什么缩进.对齐.高亮之类的表现都有,写 ...
- Java基础教程——线程状态
线程状态 JAVA定义了6种线程状态: Thread.State public enum State { NEW, RUNNABLE, BLOCKED, WAITING, TIMED_WAITING, ...
- Pytest自动化测试 - 完美结合Allure
简介 Allure Framework是一种灵活的.轻量级.多语言测试报告工具. 不仅可以以简洁的网络报告形式非常简洁地显示已测试的内容, 而且还允许参与开发过程的每个人从日常执行中提取最大程度的有用 ...
- SkyWalking —— 分布式应用监控与链路追踪
SkyWalking 是一个应用性能监控系统,特别为微服务.云原生和基于容器(Docker, Kubernetes, Mesos)体系结构而设计.除了应用指标监控以外,它还能对分布式调用链路进行追踪. ...
- 第15.48节、PyQt显示部件:TextBrowser、CalendarWidget、LCDNumber、ProgressBar、Label、HorizontalLine和VerticalLine简
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一.概述 在Designer中,显示部件有Labe ...
- HTTP接口传输数据常用的方式
Get方式是从服务器上获取数据,在数据查询时,建议用Get方式:如商品信息接口.搜索接口等 Post方式是向服务器传送数据,做数据添加.修改或删除时,建议用Post方式,如登录注册接口等. 1.GET ...