系统学习PHP的一些思路
作为一名新进的PHPer,迫切的想提高自己的编码水平,目前市面上几乎没有高手来给新手指点出一条相对靠谱的途径。
首先,面对PHP众多杂乱无章的各种函数,到底该怎么去理清其各者之间的关系,经过一段时间的思考,本人想出了一条学习的路径,供各位参考。
PHP做为脚本语言,最基本的就是对数据的CURD,大概涉及到的也就是一:数据库的SQL操作,;二.PHP对MYSQL的连接操作;
这些都很简单,看看DOME和手册都搞定了,接下来,仔细一想,其实PHP处理的无非就是数据从数据库取下来之后如何的按照业务需求进行处理,
在谈PHP对数据处理之前,不得不谈一下PHP的数据类型。
PHP的数据类型分为八种;性感尤物
一.整形和浮点型,布尔,字符串;(基本类型)
二,数组和对象;(混合类型)
三.null和资源型;(特殊类型)
这里对比一下JS的六种类型极品美乳
一.数值,布尔,字符串;
二null和undefined;
三.对象;
这里为什么要谈PHP的数据类型?因为我发现在日常的操作中,了解数据类型对理清PHP众多函数,起着关键性的作用。本人也开始也是不想去思考这些东西的,
只可惜目前市面上没有成行的教程提供思路去解析PHP手册中的众多函数是如何分类的思路;
废话少说,根据PHP的数据类型我们可以将函数分成下面几类:
常用的逻辑函数:
一.针对字符串操作的函数;
二.针对数组操作的函数;
常用的文件操作函数
三.针对文件上传操作的函数;
四.cookie 和session
五.文件相关的函数和自动创建文件的类;
常用的类的OOP封装
六.GD库的操作;
PHP的命名是相对混乱的,但是大部分都是相应的模块名+这个函数的功能。只可惜英语太渣,看不太懂;
其他的函数都是写乱七八糟的,可能都是些被淘汰的函数,这里就不做深究。
了解函数的分类有有助于节约时间,避免掉进PHP的函数库这个深洞里面,然后再看看,我们日常做操的无非就是针对数据的展现和存储做相应的操作,
数据的都是存储在数据表中的,数据重数据库中拿出来,一般都是以二维数组的形式取出,最多的就是用遍历多维数组,这里可以对比一下使用for和foreach二中方式的区别;
数据被遍历出来了,有时候要输出字符串,比如THINKPHP中的分页类的实现,后台通过逻辑处理后生成一大串字符串,插入前台模板中;
在编程的时候就是针对数据的流向对用PHP的语言进行控制和逻辑处理,一般调试的时候都是按这个流程来进行相应调试。
再者就是对数据库的设计,理解ORM中的一些思想。
系统学习PHP的一些思路的更多相关文章
- 零基础如何系统学习Java Web
零基础如何系统学习Java Web? 我来给你说一说 你要下决心,我要转行做开发,这样你才能学成. 你要会打字,我公司原来有一个程序员,打字都是两个手一指禅,身为程序员你一指禅怎么写出的代码,半个 ...
- Unity3D 装备系统学习Inventory Pro 2.1.2 基础篇
前言 前一篇 Unity3D 装备系统学习Inventory Pro 2.1.2 总结 基本泛泛的对于Inventory Pro 这个插件进行了讲解,主要是想提炼下通用装备系统结构和类体系.前两天又读 ...
- MES系统学习
MES系统是当今制造型企业信息化的热点,而统一建模语言UML是面向对象建模的标准语言,在软件工程发挥着重要作用.MES系统如何进行UML建模呢,今天和大家重点讨论一下MES系统的UML建模方法,请看本 ...
- 001 今天开始系统学习C#
2016-01-16 之前只是大概了解过c#语言,感觉掌握不牢靠.现在开始系统学习C#.现以该博客作为学习笔记,方便后续查看.C# 目标:系统掌握c#知识 时间:30天 范围:C#基础,Winform ...
- Linux系统学习笔记:文件I/O
Linux支持C语言中的标准I/O函数,同时它还提供了一套SUS标准的I/O库函数.和标准I/O不同,UNIX的I/O函数是不带缓冲的,即每个读写都调用内核中的一个系统调用.本篇总结UNIX的I/O并 ...
- Hibernate的系统 学习
Hibernate的系统 学习 一.Hibernate的介绍 1.什么是Hibernate? 首先,hibernate是数据持久层的一个轻量级框架.数据持久层的框架有很多比如:iBATIS,myBat ...
- css系统学习网站
最近系统学习一下css样式,找到一个不错的网站.http://css.doyoe.com/
- Ubuntu LTS 系统学习使用体会和实用工具软件汇总 6.04 8.04 10.04 12.04 14.04 16.04
Ubuntu LTS 系统学习体会和工具软件汇总 6.04 8.04 10.04 12.04 14.04 16.04 ubuntu入门必备pdf:http://download.csdn.net/de ...
- MySQL如何系统学习
MySQL是当下互联网最流行的开源数据库.不管你使用或者学习何种编程语言,都将会使用到数据库,而MySQL则是应用最为广泛的数据库,没有之一! 之前在我的博客上也发布过一些MySQL优化配置项,都收到 ...
随机推荐
- nginx 错误502 upstream sent too big header while reading response header from upstream
查看nginx的错误日志,得到以下错误信息:upstream sent too big header while reading response header from upstream按字面意思理 ...
- Hibernate使用sql语句实现多表关联查询
/** * <查找list> * * @return 返回页面需要显示的数据 */ @SuppressWarnings("unchecked") public List ...
- 洛谷.3733.[HAOI2017]八纵八横(线性基 线段树分治 bitset)
LOJ 洛谷 最基本的思路同BZOJ2115 Xor,将图中所有环的异或和插入线性基,求一下线性基中数的异或最大值. 用bitset优化一下,暴力的复杂度是\(O(\frac{qmL^2}{w})\) ...
- 潭州课堂25班:Ph201805201 tornado 项目 第六课 用户和图片分享的集成(课堂笔记)
tornado 相关说明 改善图片上传功能 ,生成唯一的 ID ,与路径拼接,生成 URL, 这里引用 uuid 的 python 库 在 photo.py 中创建个类,用来 辅助用户上传的图片,生 ...
- 转 MYSQL InnoDB Record, Gap, and Next-Key Locks
http://dev.mysql.com/doc/refman/5.0/en/innodb-record-level-locks.html InnoDB has several types of re ...
- GMA Round 1 离心率
传送门 离心率 P是椭圆$\frac{x^2}{a^2}+\frac{y^2}{b^2}=1$上一点,F1.F2为椭圆左右焦点.△PF1F2内心为M,直线PM与x轴相交于点N,NF1:NF2=4:3. ...
- GMA Round 1 新程序
传送门 新程序 程序框图如图所示,当输入的n=时,输出结果的ans是多少? 容易看出该程序求n以内质数个数,50以内有15个. 定位:简单题
- HTML5_canvas_填充文本,描边文本
canvas 文本相关 填充文本 pen.fillText("HelloWorld", 100, 100); 文本的(100, 100) 在文本基线处 文本样式 pe ...
- [LeetCode] Binary Tree Pruning 二叉树修剪
We are given the head node root of a binary tree, where additionally every node's value is either a ...
- javascript的数组之includes()
includes()方法用来判断一个数组是否包含一个指定的值,根据情况,如果包含则返回true,否则返回false. var array1 = [1, 2, 3]; console.log(array ...