<?php
//1.php基础语法
//输出语句 echo print print_r var_dump()
//2.php是弱类型语言
//强制转换类型:(类型)变量 settype(变量,类型)
//3.变量定义
$a = 5;
//可变变量:$b = "a"; $$b = 10;
//判断变量类型 gettype(变量);获取变量类型 is_类型() is_int();判断变量是否是该类型
//判断变量是否为空:empty(); isset()
//删除变量:unset(); //4.字符串的定义方式
$str = "hello"; //可以解析转义字符和变量
$str = 'hello'; //不能解析转义字符和变量
$str = <<<A
hello
A;
//不用担心单引号和双引号的问题
//5.运算符表达式(+ - * / ++ -- = 等)
//6.语句
//分支: if switch...case
//循环:for foreach while do...while
//7.函数
//四要素:返回类型、函数名、参数列表、函数体
//在php里面函数的定义方式
function show()//普通
{
}
function show($a)//有返回的
{
}
function show()//有默认的
{
return $a;
}
function show($a=5)//有默认的
{
}
function show()//参数可变的
{
func_get_args();
}
//8.常用的函数
//随机数的:rand(); rand(0,10);0~10之间的随机数
//日期时间:time();可以获取当前日期时间戳
//date(格式化字符串,时间戳);格式化日期时间,Y-m-d 年-月-日 H-i-s 时-分-秒 大写H是24小时制小写h是12小时制
//strtotame(表示事件的字符串);将字符串转化为时间戳
//9.其他
//错误抑制符 @
//退出程序:exit(); die("错误信息");
//********************************************************************************************************
//二、字符串的常用方法
//1.取字符串的长度:strlen();
//2.拆分字符串:explode();
//3.合并字符串:implode();
//4.截取字符串:substr();
//5.替换字符串:str_replace(); 查找替换
substr_replace();指定位置替换
//6.去空格:trim();
//7.转大写:strtoupper();
//8.转小写:strtolower();
//9.根据长度拆分:str_split();
//*********************************************************************************************************
//三、正则表达式
//1.定界符:/ /
//2.匹配开头:^ 匹配结束$
//3.\d 任意数字 \a不可见得字符 \w 任意数字或单词字符 +前面的表达式至少出现一次 {0,2}前面的表达式至少出现0次最多出现2次
//[0,1,2]匹配【】里面的任意字符 [0-9]匹配0-9之间的数字 [a-z]匹配a-z之间的单词字符 ()——优先级 |——或
//4.拆分字符串:preg_split();
//5.替换字符串:preg_replace();
//6.匹配字符串中出现的数据(满足正则):preg_match(); preg_match_all();
//************************************************************************************************************
//四、数组
//1.数组分类:
//根据维度分:一维数组和多维数组
//根据索引分:索引数组和关联数组
//2.数组定义
$attr = array();//常见定义方式
$attr[] = 5;//赋值定义
//定义索引数组:$attr = array(1,2,3,4);
//定义关联数组:$attr = array("key"=>"value");
//3.取值
//索引数组取值:$attr[0];
//关联数组取值:$attr["key"];
//4.遍历数组:
//for循环,只能遍历索引数组
for($i=0;$i<count($attr);$i++)
{
$attr[$i];
}
//foreach遍历,可以便利索引数组和关联数组
foreach($attr as $v)
{
$v;
}
//each()和list()方法结合
//each():返回数组里面当前元素的key和value值,返回的是一个数组的形式
//list():将右侧数组的值分别赋给一组变量 list($a,$b)
//指针遍历
//取当前指针指向的元素的值:current();
//取当前指针指向的元素的key:key();
//将指针指向下一个元素:next();
//将指针指向上一个元素:prev();
//将重置指针:reset();
//将指针指向最后一个元素:end();
//5.数组的常用函数
//取数组长度:count();
//想数组添加元素:array_push();
//判断数组里面是否包含某个元素:in_array();
//合并数组:array_merge();
//去重复:array_unique();
//删除数组元素:unset();
//重新索引:array_values();
//翻转数组:array_reverse();
//数组元素排序:array_multisort();
//***********************************************************************************************************
//五、面向对象 oop
//1.类和对象 类是由众多对象抽象出来的,对象是类实例化出来的
//2.类的定义:class Ren{}
//包括成员变量 成员方法 构造函数 析构函数 __get()方法 __set()方法 __tostring()方法 __clone()方法
//3.访问修饰符:public 共有的 private 私有的 protected 受保护的 //4.三大特性
//封装:目的 做法
//继承:概念 特点 函数或者方法重写
//多态:概念 条件 //5.静态:static 静态成员是属于类的,普通成员是属于对象的
//6.抽象类:abstract 抽象类不能被实例化,一般是用作父类
//接口 interface 可以定义方法 但是不用写函数体
//7.克隆对象:clone
//8.构造函数:__construct() 写法特殊 执行时间特殊
//9.加载类
include("");
include "";
require("");
require "";
require_once("");
require_once "";
//自动加载类__autoload();
//10.单列模式 控制类只能够生成一个对象
//11.工厂模式
//************************************************************************************************************
//六、数据访问
//1.MYSQLi : $db = new MySQLi(服务器,用户名,密码,数据库);
//mysqli_connect_error();//判断是否连接成功
//$result = $db->query(sql语句);
//$result->fetch_row();
//2.pdo
//$pdo = new PDO(DNS,用户名,密码);
//$stm = $pdo->prepare(sql语句); 将这个SQL语句放到服务器上等待执行
//$stm->excute();
//$stm->fetch_row();
//在SQL语句中可以使用 ?来进行占位 :字符串占位
//************************************************************************************************************
//七、Jquery Ajax
//1.选择器——$()
//根据ID选$("#id") 返回的是一个Jquery对象,从jquery对象里面取DOM对象 取索引0[0]
//根据class选 $(".class")
//根据属性选$("[name=a]")
//根据标签名选 $("div")
//2.操作内容
//操作非表单内容:文本 text(); html代码 html();
//操作表单元素:val();
//3.操作属性
//添加设置属性:attr(属性名,属性值);
//获取属性:attr(属性名);
//移除属性:removeAttr(属性名);
//4.操作样式
//获取样式:css(样式名);
//添加设置样式:css(样式名,样式值);
//5.事件
//$("#id").事件名(function(){});
//$("#id").bind(事件名,function(){});绑定事件
//$("#id").unbind(事件名);移除事件
//6.Ajax
//async; 异步的处理方式
//url:调用的处理页面
//data:传递的数据JSON格式
//type:数据传递的方式 POST或GET
//dataType:返回数据类型 TEXT/JSON/XML
//success:回调函数
//error:当调用出错执行的方法 //7.JSON 格式:{key:value}
//8.XML文档 格式:必须有一个根,又开始就必须有结束,大小写敏感,标签名可以自定义,可以加属性 //9.会话控制
//SESSION特点:
//存储在服务器,有默认过期时间,每个用户存一份,可以存储任何类型数据
//必须开启才能使用 session_start();必须写在第一行
//$_SESSION["UID"] ="list"; 优点:安全 缺点:占用资源
//COOKIE
//存储在客户端 默认是没有过期时间,每个用户存一份,只能存储字符串
//setcookie(名,值);设置COOKIE
//$_COOKIE["uid"];读取cookie 优点:不占资源 缺点:不安全
//*************************************************************************************************************
//九、文件
//1.文件上传
// 做文件上传表单 enctype
// $_FILES数组读取文件信息
// 控制上传文件格式和大小
// 造存储路径(处理文件名) 给文件名 建文件夹
// 判断文件是否存在
// 上传保存 move_uploaded_file();
// 转编码格式 iconv(原编码,目标编码,字符串);
//2.文件操作
// 文件类型:filetype() is_file() is_dir()
// 路径:./ 当前路径 ../ 上级路径 / 下级路径
// 遍历目录:glob();返回该目录下所有的文件,是一个集合。
// 新建目录:mkdir();创建一个新的目录
// 删除目录:rmdir();
// 移动目录:rename(); //新建文件:touch();
//删除文件:unlink();
//复制文件:copy(); //获取文件内容:file_get_contents();
//写入内容:file_put_contents(); //文件资源:
//打开文件资源:fopen();
//关闭文件资源:fclose();
//读取文件内容:fgetc();读取一个 fgets();读取一行 fread(); fwrite();

PHP小总结的更多相关文章

  1. 【小程序分享篇 二 】web在线踢人小程序,维持用户只能在一个台电脑持登录状态

    最近离职了, 突然记起来还一个小功能没做, 想想也挺简单,留下代码和思路给同事做个参考. 换工作心里挺忐忑, 对未来也充满了憧憬与担忧.(虽然已是老人, 换了N次工作了,但每次心里都和忐忑). 写写代 ...

  2. 【小程序分享篇 一 】开发了个JAVA小程序, 用于清除内存卡或者U盘里的垃圾文件非常有用

    有一种场景, 手机内存卡空间被用光了,但又不知道哪个文件占用了太大,一个个文件夹去找又太麻烦,所以我开发了个小程序把手机所有文件(包括路径下所有层次子文件夹下的文件)进行一个排序,这样你就可以找出哪个 ...

  3. jQuery实践-网页版2048小游戏

    ▓▓▓▓▓▓ 大致介绍 看了一个实现网页版2048小游戏的视频,觉得能做出自己以前喜欢玩的小游戏很有意思便自己动手试了试,真正的验证了这句话-不要以为你以为的就是你以为的,看视频时觉得看懂了,会写了, ...

  4. 微信小程序开发心得

    微信小程序也已出来有一段时间了,最近写了几款微信小程序项目,今天来说说感受. 首先开发一款微信小程序,最主要的就是针对于公司来运营的,因为,在申请appid(微信小程序ID号)时候,需要填写相关的公司 ...

  5. 前端网络、JavaScript优化以及开发小技巧

    一.网络优化 YSlow有23条规则,中文可以参考这里.这几十条规则最主要是在做消除或减少不必要的网络延迟,将需要传输的数据压缩至最少. 1)合并压缩CSS.JavaScript.图片,静态资源CDN ...

  6. 微信应用号(小程序)开发IDE配置(第一篇)

    2016年9月22日凌晨,微信宣布“小程序”问世,当然只是开始内测了,微信公众平台对200个服务号发送了小程序内测邀请.那么什么是“小程序”呢,来看微信之父怎么说 看完之后,相信大家大概都有些明白了吧 ...

  7. Chrome出了个小bug:论如何在Chrome下劫持原生只读对象

    Chrome出了个小bug:论如何在Chrome下劫持原生只读对象 概述 众所周知,虽然JavaScript是个很灵活的语言,浏览器里很多原生的方法都可以随意覆盖或者重写,比如alert.但是为了保证 ...

  8. TODO:小程序开发过程之体验者

    TODO:小程序开发过程之体验者 1. 小程序开发过程,先下载开发者并安装开发者工具,现在腾讯开放测试了,普通用户也可以登录开发者工具,如图普通用户登录为调试类型,但是只能建立无AppID的项目 如果 ...

  9. TODO:即将开发的第一个小程序

    TODO:即将开发的第一个小程序 微信小程序是一种全新的连接用户与服务的方式,它可以在微信内被便捷地获取和传播,同时具有出色的使用体验.个人理解小程序是寄宿在微信平台上的一个前端框架,具有跨平台功能, ...

  10. 微信小程序体验(2):驴妈妈景区门票即买即游

    驴妈妈因为出色的运营能力,被腾讯选为首批小程序内测单位.驴妈妈的技术开发团队在很短的时间内完成了开发任务,并积极参与到张小龙团队的内测问题反馈.驴妈妈认为,移动互联网时代,微信是巨大的流量入口,也是旅 ...

随机推荐

  1. Daily Scrum Meeting ——EighthDay

    一.Daily Scrum Meeting照片 橙汁参加ICPC未归,周一牛姐去上课,佳恺今天去迎新晚会表演舞台剧了 二.Burndown Chart 今日没有燃掉issues 增添了两个issue ...

  2. (iOS)项目总结-项目中遇到的各种的问题和解决方法

    前言: 一到公司报道那时,便着手独立的去完成了一个项目,其中的辛酸泪也是不足为外人道也.这次算是一个新型的app,仍然是独立开发,但心境和想法却是完全的不同.下面说一次以前做开发时常常忽略的知识,也算 ...

  3. Android测试之 APK重签名方法

    方法一:命令行重签名 D:\>keytool -helpkeytool 用法: -certreq [-v] [-protected] [-alias <别名>] [-sigalg & ...

  4. Windows Server 2008 R2 DNS 服务器迁移

  5. Multiple annotations found at this line

    Multiple annotations found at this line 在使用MyEclipse的时候,通过MVN导入项目时候,webapp下面的JSP页面报了如下的错误: 这种情况通常的原因 ...

  6. C# 线程调用主线程中的控件

    由于项目的需要,最近几天一直在做串口和数据库.由于C#使用的时间不长,所以在编写代码和调试的过程中总是遇到意想不到的问题,比如在使用串口接收数据的时候,在接收数据事件中想把接收的数据放入一个textb ...

  7. Memcached: List all keys

    In the general case, there is no way to list all the keys that a memcached instance is storing. You ...

  8. ios中自定义tableView,CollectionView的cell什么时候用nib加载,什么时候用标识重用

    做了一段时间的iOS,在菜鸟的路上还有很长的路要走,把遇到的问题记下来,好记性不如烂笔头. 在项目开发中大家经常会用到tableView和collectionView两个控件,然而在cell的自定义上 ...

  9. java swing文件内容检索工具

    Java相关技术 - 文件内容检索工具 拿到一个几百M甚至上G的project让你去学习 有时候你会想知道某个关键词是在哪个文件里 比如:spring MVC配置的@RequestMapping,你从 ...

  10. hibernate学习(5)——一对多关系表达

    一对多实现 1. 实现类 package com.alice.hibernate02.vo; import java.util.HashSet; import java.util.Set; publi ...