php开发入门教程
LAMP
- window:WAMP(windows,apache,mysql,php)
- LAMP是 Linux,Apache,MySQL和PHP的缩写,是我们提供 Web 服务的软件基础。
- 对于 Linux,你需要熟悉常用的操作命令,完成日常事务
- 对于 Apchae,你需要熟悉其配置,配置可运行的网站。
- 对于 MySQL,会常见查询,会设计表。
- 对于 PHP,掌握基本的PHP语法,掌握 Zend Framework 框架。
- 安装 LAMP 环境,可参考:Ubuntu 搭建 php 开发环境教程,把该教程中的 mariaDB 替换成 mysql,把 php7全部替换成php5即可。
Linux
公司程序开发统一使用 Ubuntu14.04 LTS 系统版本作为日常操作系统。
问题:为什么是 Linux 而不是 Windows?为什么选择 Ubuntu?
- 我们已经上线的项目全部部署在 Linux(Ubuntu)上面的,直接在 Ubuntu 上面开发,可以减少兼容性问题,避免因为系统不同而产生的其他问题。
- Linux 下面有很多好用的程序,它们都很简洁,可以直接从命令行调用。相比 windows 一步一步点击,linux只需一行代码就行。当你习惯这一点,就再也不会想去用 Windows 开发了。
- Linux 可以很方便地管理服务器。可以自己编写脚本来控制服务器如何运行,定时运行任务。如果windows的话,你只能寄希望于微软了,掌握微软提供的管理软件,自己不能修改,也不明白其原理。
Ubuntu 入门
- Linux 有很多版本,Ubuntu 是其中的一种,其他还有 Redhat,Debian,CentOS。
- 你需要下载 Ubuntu14.04 LTS 桌面版镜像文件。
- 安装 Ubuntu 系统,可参考:Ubantu14.04 安装教程
- 安装一些常用的程序,至少要有:
- Chrome 浏览器,php开发必备
- Lantern/hosts文件,用于FQ访问 Google
- 开发工具(phpstorm(激活),vscode,sublime,zend studio,git,vim)
Linux 常用命令
apt-get软件安装/卸载apt-get install packagename安装软件apt-get remove packagename删除软件apt-get update/upgrade更新源和软件
ls显示当前目录下的文件和目录详细信息cd切换目录vim filename使用vi编辑器编辑文件tail显示文件末尾一段内容|管道,把左边程序的输出作为右边程序的输入>重定向,把输出保存到文件中mysql -u root -p登录mysqlphp filename运行.php文件program_name命令行输入程序名可直接运行程序,比如命令行输入phpstorm就打开了 phpstorm,其他程序同理。sudo su获得root权限df -h查看目录空间大小service apache2 restart重启 apache 服务ssh -l username ip命令行连接服务器
Linux 技巧
- 以 . 开头的文件为隐藏文件,
ls -a可以显示它。也可以在文件管理器设置“显示隐藏文件”。 - 系统自带的 gedit 编辑器很好用,支持代码高亮,临时用来编辑单个代码文件很方便。
- 命令行中使用 vim 编辑器很方便。
Apache
主要掌握Apache的配置,可参考:Ubuntu 下 Apache 的配置教程
这个配置的意思是:在浏览器输入自己设定的域名(比如:www.test.com)就访问到本地的项目。
默认的 Apache 的项目目录是 /var/www/html,而我们自己的项目通常在 /home/username/projectname,而且我们也要自己设定一个域名,总不能都用 localhost 吧。
此外实际网站部署时也要域名,所以就在本地先学会实践之。
掌握 Apache 的配置文件的主要结构和内容,windows下的apache和Ubuntu下的apache配置文件是不同的,这点要注意。主要区别是:Ubuntu中配置文件默认分散到了各个文件中。
可参考:How To Configure the Apache Web Server on an Ubuntu or Debian VPS
MySQL
- MySQL 的安装,前面 LAMP 安装中已经安装好了。
- 会使用 phpmyadmin 工具管理mysql数据库(主要)。
- 掌握常用的 mysql 语句,可参考《MySQL必知必会》(下载)。该书简单易懂,入门够用了。
- 了解索引,不同的数据类型,并且应用到表设计中。
PHP
- 这是php工程师必须要会的技能
- 掌握 Zend Framework,我们会用一个小的 Demo 来引导你理解整个框架结构。
- 先完成 zend 官网上的教程:Zend Framework Quick Start,这个原版的教程有一些坑,为了快速入门也可以参考我们翻译的中文版:Zend Framework 1 - Quick Start
- 完成我们布置的一个 Demo 示例程序。
- Zend Framework
- php 框架都是相通的,zend 也不例外,它也是一个 MVC 架构的php框架。
- 目录结构:/application php文件、/public 静态文件
/application/controllers/ 控制器
/application/models/ 模型
/application/views/ 视图
/application/library Zend 框架
/public 主要是一些css,js,引用的前端框架、库文件 - 所有的http请求通过 index.php,然后传递到相应的 controllers,调用相应的服务并执行,产生结果,返回响应给用户浏览器。
php开发入门教程的更多相关文章
- 基于Nodejs生态圈的TypeScript+React开发入门教程
基于Nodejs生态圈的TypeScript+React开发入门教程 概述 本教程旨在为基于Nodejs npm生态圈的前端程序开发提供入门讲解. Nodejs是什么 Nodejs是一个高性能Ja ...
- Arduino可穿戴开发入门教程(大学霸内部资料)
Arduino可穿戴开发入门教程(大学霸内部资料) 试读下载地址:链接:http://pan.baidu.com/s/1mg9To28 密码:z5v8 介绍:Arduino可穿戴开发入门教程(大学霸内 ...
- 一看就懂的Android APP开发入门教程
一看就懂的Android APP开发入门教程 作者: 字体:[增加 减小] 类型:转载 这篇文章主要介绍了Android APP开发入门教程,从SDK下载.开发环境搭建.代码编写.APP打包等步骤 ...
- iOS开发入门教程
iOS开发入门教程 http://my.oschina.net/mailzwj/blog/133273 摘要 iOS开发入门教程,从创建项目到运行项目,包括OC基础,调试,模拟器设置等相关知识. iO ...
- ENVI Services Engine5.1 应用开发入门教程
原文地址: ENVI Services Engine5.1 应用开发入门教程_ENVI-IDL中国_新浪博客 http://blog.sina.com.cn/s/blog_764b1e9d0102uy ...
- Apple官方IOS开发入门教程[v0.2]
今天,又跑去找IOS开发入门教程了,结果发现没什么好的PDF. 后来发现,原来苹果官方有开发入门教程,而且写的很好.所以整理出来了,给大家分享一下. 我就不在这里贴pdf的内容了,下面有苹果官方教程的 ...
- Android Studio JNI开发入门教程
Android Studio JNI开发入门教程 2016-08-29 14:38 3269人阅读 评论(0) 收藏 举报 分类: JNI(3) 目录(?)[+] 概述 在Andorid ...
- 移动H5开发入门教程:12点webAPP前端开发经验
如果你是一名移动H5前端开发人员,25学堂的小编认为下面的分享的12点webAPP前端开发经验是你必须掌握的基础知识点.算是一篇移动H5开发入门教程吧! 1. viewport:也就是可视区域.对于桌 ...
- C#,ArcGIS Engine开发入门教程
C#,ArcGIS Engine开发入门教程 转自:http://blog.csdn.net/yanleigis/article/details/2233674 目录(?)[+] 五实现 一 加载A ...
- Arduino可穿戴开发入门教程Windows平台下安装Arduino IDE
Arduino可穿戴开发入门教程Windows平台下安装Arduino IDE Windows平台下安装Arduino IDE Windows操作系统下可以使用安装向导和压缩包形式安装.下面详细讲解这 ...
随机推荐
- C#类型 分类: C# 2015-03-09 08:44 202人阅读 评论(0) 收藏
C# 类型 引言 本文之初的目的是讲述设计模式中的 Prototype(原型)模式,但是如果想较清楚地弄明白这个模式,需要了解对象克隆(Object Clone),Clone其实也就是对象复制.复制又 ...
- 手把手教学:详解HTML5移动开发框架PhoneJS
摘要:HTML/JavaScript的优势自不必说,但却也并非完美,相比之下,原生App占内存更少.响应更快.本文详解了HTML5移动开发框架PhoneJS的使用全过程,通过它,能够让Web应用在移动 ...
- Vim 程序编辑器 经常使用操作
按下 i 进入编辑模式 wq! 强制保存并退出 q! 不保存,强制退出 !有强制的意思 方向键位: k h j l Ctrl + f 向下移动一页 Ctrl + b 向上移动一页 0 一行的开头 ...
- nrf51822蓝牙芯片ble_app_proximity程序总结
近期由于钥匙的事情,研究了下官方自带的ble_app_proximity程序,事实上就是跟防丢有关系的程序. 同一时候也发现了看nordic程序的一些门道,主要还是看协议栈里面的一些service,首 ...
- Node.js异步处理CPU密集型任务
Node.js异步处理CPU密集型任务 Node.js擅长数据密集型实时(data-intensive real-time)交互的应用场景.然而数据密集型实时应用程序并非仅仅有I/O密集型任务,当碰到 ...
- JAVA操作Excel时文字自适应单元格的宽度设置方法
使用JAVA操作Excel通常都使用JXL,方法很简单网上也有很多的教程,然后往往一些细节性的问题却导致我们这些Programmer苦恼不已.这两天帮一个朋友做一个Excel表格自动生成的小软件,就遇 ...
- gdb - 列出所有函数调用
How can we list all the functions being called in an application For any realistically sized applica ...
- 再回首,Java温故知新(十):数组
数组是程序中用来存储同一类型值的集合,基本所有编程语言中都有这种类型存在.声明数组时需要指出数组类型和数组变量名,初始化后数组的长度不可变,使用过程中通过下标来访问数组中的元素,示例代码如下: int ...
- JAVA学习:方法
方法是放在两个不同的java文件中,一个是指存储相应的业务逻辑, 另一个java文件是只控制 输入输出(也就是用户界面). Calc方法: /* * 方法 */ public class Calc { ...
- Eclipse3.7默认字体修改-找回Courser-New字体
1.找到jFace并用WinRAR打开之: jFace的具体位置:$Eclipse目录$/plugins/org.eclipse.jface_3.7.0.I20110522-1430.jar,找到后, ...