PHPWeb开发入门体验学习笔记

一、PHP应用程序开发须知

1.入门要点

程序员三个阶段:码农(速成技能)->工程师(长期知识)->专家(研究论文)

编程三要素:声明变量(系统、全局、字段等)、数据算法(应用、比较、计算等) 、控制结构(变更、判断、循环等)

类三要素:封装、继承、多态

PHPweb应用程序开发分两端:前台Html+Css+JavaScript静态页面或UI美工平面设计,后台PHP+MySQL动态网页设计或交互式数据处理

php知识要点:函数、数组、面向对象

php运行开发环境:lwamp集成运行环境Linux/Windows+Apache+MySQL+PHP;严格区别普通代码编辑器的PHP源代码错误检查调试和应用程序项目工程测试IDE集成开发环境ZendStudio/PhpStorm

php入门学习路线:自定义搭建PHP运行开发环境奠基石——〉肓打敲代码找感觉——〉GUI图形界面即见即所得设计开发项目掌握OOP面向对象编程思想——〉培训学习与实战开发分两个平台同步推进——〉仿站与原创相结合——〉MVC框架结构基础工程规范开发兼顾非框装修工程个性化开发

2.编程教你如何思考:20年自学编程的经历告诉了自己,自学编程是一个艰苦的过程,同时也是一个励志的过程,但编程是一门艺术,而不是纯技术。浓厚兴趣+正确方法=快速入门,e课程+ e课本+ pc测试+ pc项目开发= 入门+ 精通。编程是什么?编程就是用英语写一段文字或作一篇作文。要想快速入门,英语不能太差,定TA个小目标:快速阅读、快速实验、快速通读,一理通百理明,10天培养感觉、30天培养兴趣,100天训练编程思维和具备编程思想,200天整出个象样的Web Apps项目来

3.大道至简,精进极致:Web开发基于面向对象Oop思想,以大道至简的理念,用轻量级工具(IDE)开发高大上干货(App),炫酷大气而又平滑简约,但简约不简单。“界面友好、代码优雅、系统稳定”是MIS程序员永恒的追求,MIS的功能性、实用性、稳定性三者相互制约,如何拿捏分寸?全靠深入实践和适应业务需求,跟上时代的潮流

4.Web开发速成三要素:看教程(视频)、读程序(文档)、验代码(测试),反反复复,以完成开发项目工程demo演练为学习开发计划总进度,带着开发过程中的疑问来学习平台反复实验论证完成学习任务,不断完善项目工程规划图来细分学习与开发的各模块各阶段各要点按项目开发一、二级网络计划持续推进学习进度

5.Web开发过程:脚本编辑调试、静态网页仿站相关技巧、UI友好设计、视图美工模块化、动态网页原生代码编写或模板框架实现MVC或整站下载内容资料快捷生成源代码、非大型框架的函数式结构化编程、框架式项目工程开发。具体操作来说,前端静态处理可用Firefox扒下网页内容归类收集静态页面资料进行仿站编辑二次开发,也可以用DW+Ps完成美工设计或WebStorm或HBuilder→html5、css3、js 原生代码开发原创WebApp静态页面,后端动态开发设计用非图形界面Oop开发环境IDE工具ZendStudio或PhpStorm→编写WebApp开发项目源代码,快速搭建框架推荐图形界面可视化开发利器 Dreamweaver  CS6 所见即所得设计开发,可以是自建框架结构化编程完成项目,也可以借助TinkPHP框架或Smarty模板开发项目。特别要强调的是DW,中文名称 “梦想编织者”,是美国MACROMEDIA公司开发的集网页制作和管理网站于一身的所见即所得网页编辑器,DW是第一套针对专业网页设计师可视化美工网页开发工具,利用“拖拽”功能可以轻而易举地制作出静态或动态网页,完全可以作为Web前端开发的辅助工具也可以作为入门者通过GUI图形界面学习面向对象编程的好帮手。

6.PHP学习开发:尽量用面向对象Oop思路着手开发项目,先模块化封装类,再力争以通用、快捷调用类方法来提高开发效率,用大道至简的开发设计理念入手WebApp 开发。学习与开发按网页设计内容分为静态与动态两大类设计编程课程,静态网页学习内容基础部分课程可参考HTML+CSS+JS实战,动态网页学习内容基础部分课程参考PHP经典实例开发,项目开发实战参考PHP面向对象项目,大公司多人同时开发同一项目时,为了让前端美工开发代码简洁明了,快捷专注静态页面设计,可采用模板规范开发机制专业化规划项目开发工程,App模板开发参考Smarty全面掌握视频教程,App框架开发参考TinkPHP专题

7.选择合适的开发工具:工欲善其事,必先利其器。只有几兆字节的轻量级非图形界面Opp集成开发工具首选超级记事本Notepad++ v7.3.2(2.8MB);本土化国产开发工具首选HBuilder v7.6.5(3.67MB);国际化标准开具首选ZendStudio v13.5(320MB)或PHPstorm v2016.3.2(203MB);辅助开发工具首选Smarty v3.1.30(0.79MB )官方推荐模板、国产ThinkPHP v3.2.3(1.08MB)框架;博客、内容管理系统CMS首选WordPress v4.7.2(8.9MB);图形界面数据库管理系统首选官方推荐PhpMyadmin v4.6.6(11MB);初学者入门GUI美工开发利器DW+PHP组合设计动态网站,开发浏览器首选Firefox火狐 。学习途径e课堂:北有慕课网/51CTO/南有腾讯课堂/职坐标,首选51CTO学习与海量资源下载

8.零基础快速入门方法技巧:充分发挥个性化本地PHP学习开发环境资源优势,同时创建学习与开发两个作业平台,学习平台(ZendStudio工作空间)d:\PhpStudy\www与开发平台(本人开发空间rk.com人可工作室)d:\PhpRE\www\rk相结合,课程学习与App项目开发两不误相结合,把学习平台的实验结果及时提供给项目工程开发使用和检验,反用App项目开发来论证和检验学习效果,及时调整学习方法和思路,提高学习效率,培养编程兴趣,用每天课程代码测试的成就感提精气神、促进快乐编程,用成功促进更大的成功

9.代码迁移的兼容性问题:2015年12月3日正式发布的PHP7.0.0向下兼容高达99.9%,但是,目前能稳定运行的应用程序及公开课上讲解的方法多半是老版本代码,Web学习与开发过程中,下载后欲直接迁移或复制粘贴在PHP7运行环境的非原生代码必须先通过最新版本的ZendStudio13.5或PhpStorm2016.3检测,测试成功后再用于开发新的应用程序。兼容性问题重点是数据库相关的PDO应用方面

10.轻松学习快乐编程:代码如诗,编程好比作诗。类的“驼峰命名法”与“驼峰命令法”就好比诗歌的押韵,Dreamweaver自动生成源代码就好比“魔术师”耍魔法。编程乐趣要有作诗的雅兴和灵感,享受创作的快乐。快速入门,不等于急于求成。程序员在编程大海中冲浪、体验编程乐趣,劳逸结合,乐山乐水,每天有份轻松愉快的好心情,才能创造出富有价值的WebApp精品

11.思路决定出路:遇到新问题,不纠结不死缠着浪费时间,停下来整理一下思路,或查查资料、充充电,利用外脑、换个办法就会迎刃而解,收到意外效果。每次开发前先用小便笺写下一两句简短思路,开始按思路逐条快速实验,行不通又退出来再理新思路、换另一种新方法,直到问题破解。山重水复疑无路,柳暗花明又一村。这方法叫“便笺思路”开发,小便笺能解决大问题

12.痛并快乐着:PHP是一门易学难精的语言,其实每一门编程语言又何尝不是如此呢?程序员少不了挑灯夜战,独自承受孤独与寂寞。学习与开发三分热度七分迷惑,每个程序员都有同样的困惑,要决心成为一个合格的PHPer,学习与开发就要有煎熬痛苦和寂寞的准备。虽然说“一生全凭自救自,无毅无志无功成”,但还是要有开发的信心和编程的乐趣,坚持自己,痛并快乐着

二、PHP应用程序开发学习小结

1.数组Array()就是浴室柜号$key和柜子里衣物$value声明一组数据,声明数组就是造一组柜子。数组输出可用print_r()或打印函数命令var_dump();数组属于非自定义函数,与封装自定义函数共同实现PHP功能和方法

2.表单或Js将前端提交静态页面信息通过$_POST提交数据传递指定参数给后台php处理,$_GET获取传递数据php输出结果

3.非图形化UI界面面向对象学习先从封装类着手,从类的属性与应用上来认识Oop并将对象应用到WebApp开发中。OOPL ( Object- Oriented Programming Language ) 可以提高程序的封装性、复用性、可维护性,但仅仅是“可以” ,能不能真正实现这些优点,还取决于编程和设计人员应用程度。就PHP而言,其不是一门纯粹的面向对象的语言,但是仍然可以使用PHP写出好的面向对象风格的代码。类是对象的抽象组织,对象是类的具体存在。实例化了类,产生了一个个对象和个体的实例化过程,实际上也就是从抽象的类到具体的对象过程。一个类的设计需要能充分展示其最重要的属性和方法,并且能与其他事物相区分。只有类本身有意义,从抽象到具体的实例化才会有意义。类定义了一系列的属性(私有)和方法(公有),并提供了实际的操作细节,方法可以用来对属性进行加工,传递变量值给后续程序使用,并能让子类继承父类属性。对象含有类属性的具体值,这就是类的实例化。正是由于属性的不同,才能区分不同的对象。快速入门建议用Dreamweaver图形界面操作加深Oop的认识和理解

(1)类的定义

class 类名{}

类名的命名方式和变量的命名方式一样,第一个单词首字母要进行大写

(2)类的修饰符

public 公有的 任何位置都可以访问 默认的

protected 受保护的 类内子类可以访问

private 私有的 类内可以访问

(3)类内属性

类内定义的变量,要使用修饰符进行修饰,否则会报错误

(4)类内方法

类内定义的函数

(5)构造方法

用于给类进行初始化的抽象工作,让类具有一般性,一般用于给成员属性进行赋值,当类创建对象时会被自动调用,注意“__”两个下划线元素不要写错,类被实例化就好比“耍魔术”会有震撼的效果被见证奇迹

public function __construct([参数列表]){}

(6)析构方法

用于给类做些最后的处理工作,当类的对象不再使用时会自动调用些方法

public function __destruct() {}

(7)类的实例化

对象名 = new 类名([参数列表]);

参数用于给构造方法传递参数

(8)类内成员属性和方法的访问

类内:

$this->属性名[方法名];

$this代表当前对象

(9)类外引用

$对象名->属性名[方法名];

(10)static关键字 用于修改类内的成员属性或者静态方法,被此关键字修改的属性或者方法属性是整个类的,不属于任何一个对象

(11)类内访问

self::属性名[方法名];

(12)类外访问

类名::属性名[方法名];

4.经典IDE开发MIS流程(前端UI框架开发模式)

基本思路:

正式开发前先优化扩展PHP功能,在PHP目录下全局安装composer phar依赖包,可通过composer install/update直接在项目目录下安装更新whoops容错处理技术、Medoo数据库框架、Twig模板引擎等第三方应用。通过触发器init.php传递自定义常量和变量解决前端UI框架内页联动响应问题等一系列开发疑难杂症……

方法步骤:

全局安装php依赖包composer->使用Comporser创建项目架构->PhpStom本地开发

加载公共函数①+……

加载composer②+③+④

编程调试触发器init.php集成①+②

①p($var)调试方法

②whoops捕获出错信息处理方法

M层引用

③引用Medoo数据库框架

require ‘vendor/autoload.php’;

// 初始化配置

$database = new medoo([    ‘database_type’ => ‘mysql’,    ‘database_name’ => ‘name’,    ‘server’ => ‘localhost’,    ‘username’ => ‘your_username’,    ‘password’ => ‘your_password’,    ‘charset’ => ‘utf8’]);

C层引用

④引用Twig模板

require_once ‘vendor/autoload.php’;  $loader = new Twig_Loader_Filesystem(‘/path/to/templates’);  $twig = new Twig_Environment($loader, array(      ‘cache’ => ‘/path/to/compilation_cache’,  ));  echo $twig->render(‘index.html’, array(‘name’ => ‘Fabien’));

边想边试边调函数式结构化开发,基于H-ui或Layui前端框架开发,H5高大上UI及经典模块化编程

⑤开发完毕,上线测试通过后用composer发布更新升级Apps到应用商店

* 发布自己的Package

* 第一步:登陆github,创建项目

* 第二步:终端git clone 项目地址

* 第三步:进入项目目录,创建composer.json文件:执行命令composer init即可

* 第四步:根据提示填写完毕穿件composer.json

* package name /

* description

* author

* minimum stability

* package type

* license

* 第五步命令:git add .

* 第六步命令:git commit -m”更改的描述”

* 第七步命令:git push

* 第八步:发布到packaglist.org,登陆自己的id

* 第九步:点击右上角submit,然后粘贴github连接后,再点击check

* 第十步:添加自动更新webhook

* 到 github项目,点击settings

* 点击左边导航webhooks & services

* 点击右边的add services

* 搜索package

* 填写user token,token可以再packagist得profile找到

* 粘贴token,然后addservice

* 然后点击生成出来的package出现画面

* 点击test service,出现ok表示成功

* 备注:绑定完成后,当你git提交更新后就会同步到package那边了

时间: 2024-10-22 09:46:08

PHPWeb开发入门体验学习笔记的相关文章

ASP.Net开发基础温故知新学习笔记

申明:本文是学习2014版ASP.Net视频教程的学习笔记,仅供本人复习之用,也没有发布到博客园首页. 一.一般处理程序基础 (1)表单提交注意点: ①GET通过URL,POST通过报文体: ②需在HTML中为表单元素设置name: ③元素id是给Dom用的,name才是提交给服务器用的: (2)请求处理响应模型: ①浏览器发出访问请求→②服务器处理访问请求并返回HTML→③浏览器解析HTML并显示页面 (3)GET与POST的区别:(★★★→重点) ①GET通过URL传值,而POST通过HTT

《NOSQL数据库入门》学习笔记

<nosql数据库入门> 第1章 nosql数据库的基础知识 1 1.1 关系型数据库和nosql数据库 2 1.1.1 什么是nosql 2 1.1.2 关系型数据库简史 2 1.1.3 数据库的分类 3 1.1.4 关系型数据库的优势 5 1.1.5 关系型数据库的不足 5 1.1.6 nosql数据库 9 1.2 nosql数据库是什么 12 1.2.1 键值存储 13 1.2.2 面向文档的数据库 14 1.2.3 面向列的数据库 14 1.3 如何导入nosql数据库 16 1.3.

Webpack新手入门教程(学习笔记)

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; text-align: center; font: 30.0px Helvetica; color: #000000 } p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px "PingFang TC Semibold"; color: #000000 } p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; font: 11.0

《Spring3.X企业应用开发实战》学习笔记--DAO和事务

本篇是"<Spring3.X企业应用开发实战>,陈雄华 林开雄著,电子工业出版社,2012.2出版"的学习笔记的第二篇,关于DAO和事务. 本篇从DAO操作,以及事务处理的基本知识谈起,介绍事务本身,以及Spring如何通过注解实现事务. DAO 近几年持久化技术领域异常喧嚣,各种框架如雨后春笋般地冒出,Sun也连接不断的颁布了几个持久化规范. Spring对多个持久化技术提供了持久化支持,包括Hibernate,iBatis,JDO,JPA,TopLink,另外,还通过S

&lt;LINUX &gt;bash shell 入门 --linux学习笔记

首先说下我个人对于shell的理解,我觉得shell是一种通过各种控制语句将linux命令进行集合实现批处理的一种脚本语言. shell编程入门其实很简单,语法知识并不多,但是高级shell编程就很难,因为shell是用户和linux之间的桥梁,要编写高质量的shell脚本,就需要用户对linux有很全面的认识. 这里我们只分析shell脚本的语法知识,如想透彻的学习linux还需多努力. shell结构       1.#!指定执行脚本的shell 2.#注释行 3.命令和控制结构 创建she

由LCS到编辑距离—动态规划入门—算法学习笔记

一切计算机问题,解决方法可以归结为两类:分治和封装.分治是减层,封装是加层. 动态规划问题同样可以用这种思路,分治. 它可以划分为多个子问题解决,那这样是不是用简单的递归就完成了?也许是的,但是这样会涉及太多的不便的操作.因为子问题有重叠! 针对这种子问题有重叠的情况的解决,就是提高效率的关键. 所以动态规划问题可以总结为:最优子结构和重叠子问题. 解决这个子问题的方式的关键就是:memoization,备忘录. 动态规划算法分以下4个步骤: 描述最优解的结构 递归定义最优解的值 按自底向上的方

蓝鸥Unity开发基础——类型转换学习笔记

蓝鸥Unity开发基础--类型转换学习笔记 类型转换包括:自动转换+强制转换 一.自动转换 自动转换:由系统自动完成,不会导致数据精度丢失,只能从低精度类型转换高精度类型. 二.强制转换 强制转换:从高精度转向低精度类型需要强制转换,会丢失精度,需要显式地进行转换. 源代码: using System; namespace Lesson07{    class MainClass    {        public static void Main (string[] args)       

《Spring3.X企业应用开发实战》学习笔记--SpringMVC

本篇是<Spring3.X企业应用开发实战>,陈雄华 林开雄著,电子工业出版社,2012.2出版"的学习笔记的第三篇,关于SpringMVC. Spring MVC 3.0和早期版本相比拥有了一个质的飞跃,全面支持REST风格的WEB编程.完全注解驱动.处理方法签名非常灵活.处理方法不依赖于Servlet API等. 由于Spring MVC框架在后头做了非常多的隐性工作,所以想深入掌握Spring MVC 3.0并非易事,本章我们在学习Spring MVC的各项功能时,还深入其内部

Python 开发与接口测试学习笔记

这是我跟着虫师学习中积累下来的学习笔记,写得比较简单,适合想学习Python开发与接口测试的初学者学习. 一.开发投票系统 1.参考官网文档,创建投票系统. https://docs.djangoproject.com/en/1.11/intro/tutorial01/ 在创建投票系统之前,要确认自己安装的Django和官网的文档是一致的. ==================== win 10 Python 3.6.2 Django 1.11.3 Pycharm编译器 ============