LAMP

  1. window:WAMP(windows,apache,mysql,php)
  2. LAMP是 Linux,Apache,MySQL和PHP的缩写,是我们提供 Web 服务的软件基础。
  3. 对于 Linux,你需要熟悉常用的操作命令,完成日常事务
  4. 对于 Apchae,你需要熟悉其配置,配置可运行的网站。
  5. 对于 MySQL,会常见查询,会设计表。
  6. 对于 PHP,掌握基本的PHP语法,掌握 Zend Framework 框架。
  7. 安装 LAMP 环境,可参考:Ubuntu 搭建 php 开发环境教程,把该教程中的 mariaDB 替换成 mysql,把 php7全部替换成php5即可。

Linux

公司程序开发统一使用 Ubuntu14.04 LTS 系统版本作为日常操作系统。

问题:为什么是 Linux 而不是 Windows?为什么选择 Ubuntu?

  1. 我们已经上线的项目全部部署在 Linux(Ubuntu)上面的,直接在 Ubuntu 上面开发,可以减少兼容性问题,避免因为系统不同而产生的其他问题。
  2. Linux 下面有很多好用的程序,它们都很简洁,可以直接从命令行调用。相比 windows 一步一步点击,linux只需一行代码就行。当你习惯这一点,就再也不会想去用 Windows 开发了。
  3. Linux 可以很方便地管理服务器。可以自己编写脚本来控制服务器如何运行,定时运行任务。如果windows的话,你只能寄希望于微软了,掌握微软提供的管理软件,自己不能修改,也不明白其原理。

Ubuntu 入门

  1. Linux 有很多版本,Ubuntu 是其中的一种,其他还有 Redhat,Debian,CentOS
  2. 你需要下载 Ubuntu14.04 LTS 桌面版镜像文件。
  3. 安装 Ubuntu 系统,可参考:Ubantu14.04 安装教程
  4. 安装一些常用的程序,至少要有:
    1. Chrome 浏览器,php开发必备
    2. Lantern/hosts文件,用于FQ访问 Google
    3. 开发工具(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 登录mysql
  • php 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

  1. MySQL 的安装,前面 LAMP 安装中已经安装好了。
  2. 会使用 phpmyadmin 工具管理mysql数据库(主要)。
  3. 掌握常用的 mysql 语句,可参考《MySQL必知必会》(下载)。该书简单易懂,入门够用了。
  4. 了解索引,不同的数据类型,并且应用到表设计中。

PHP

  1. 这是php工程师必须要会的技能
  2. 掌握 Zend Framework,我们会用一个小的 Demo 来引导你理解整个框架结构。
    1. 先完成 zend 官网上的教程:Zend Framework Quick Start,这个原版的教程有一些坑,为了快速入门也可以参考我们翻译的中文版:Zend Framework 1 - Quick Start
    2. 完成我们布置的一个 Demo 示例程序。
  3. Zend Framework
    1. php 框架都是相通的,zend 也不例外,它也是一个 MVC 架构的php框架。
    2. 目录结构:/application php文件、/public 静态文件

      /application/controllers/ 控制器

      /application/models/ 模型

      /application/views/ 视图

      /application/library Zend 框架

      /public 主要是一些css,js,引用的前端框架、库文件
    3. 所有的http请求通过 index.php,然后传递到相应的 controllers,调用相应的服务并执行,产生结果,返回响应给用户浏览器。

php开发入门教程的更多相关文章

  1. 基于Nodejs生态圈的TypeScript+React开发入门教程

    基于Nodejs生态圈的TypeScript+React开发入门教程   概述 本教程旨在为基于Nodejs npm生态圈的前端程序开发提供入门讲解. Nodejs是什么 Nodejs是一个高性能Ja ...

  2. Arduino可穿戴开发入门教程(大学霸内部资料)

    Arduino可穿戴开发入门教程(大学霸内部资料) 试读下载地址:链接:http://pan.baidu.com/s/1mg9To28 密码:z5v8 介绍:Arduino可穿戴开发入门教程(大学霸内 ...

  3. 一看就懂的Android APP开发入门教程

    一看就懂的Android APP开发入门教程 作者: 字体:[增加 减小] 类型:转载   这篇文章主要介绍了Android APP开发入门教程,从SDK下载.开发环境搭建.代码编写.APP打包等步骤 ...

  4. iOS开发入门教程

    iOS开发入门教程 http://my.oschina.net/mailzwj/blog/133273 摘要 iOS开发入门教程,从创建项目到运行项目,包括OC基础,调试,模拟器设置等相关知识. iO ...

  5. ENVI Services Engine5.1 应用开发入门教程

    原文地址: ENVI Services Engine5.1 应用开发入门教程_ENVI-IDL中国_新浪博客 http://blog.sina.com.cn/s/blog_764b1e9d0102uy ...

  6. Apple官方IOS开发入门教程[v0.2]

    今天,又跑去找IOS开发入门教程了,结果发现没什么好的PDF. 后来发现,原来苹果官方有开发入门教程,而且写的很好.所以整理出来了,给大家分享一下. 我就不在这里贴pdf的内容了,下面有苹果官方教程的 ...

  7. Android Studio JNI开发入门教程

    Android Studio JNI开发入门教程 2016-08-29 14:38 3269人阅读 评论(0) 收藏 举报  分类: JNI(3)    目录(?)[+]   概述 在Andorid ...

  8. 移动H5开发入门教程:12点webAPP前端开发经验

    如果你是一名移动H5前端开发人员,25学堂的小编认为下面的分享的12点webAPP前端开发经验是你必须掌握的基础知识点.算是一篇移动H5开发入门教程吧! 1. viewport:也就是可视区域.对于桌 ...

  9. C#,ArcGIS Engine开发入门教程

    C#,ArcGIS Engine开发入门教程 转自:http://blog.csdn.net/yanleigis/article/details/2233674  目录(?)[+] 五实现 一 加载A ...

  10. Arduino可穿戴开发入门教程Windows平台下安装Arduino IDE

    Arduino可穿戴开发入门教程Windows平台下安装Arduino IDE Windows平台下安装Arduino IDE Windows操作系统下可以使用安装向导和压缩包形式安装.下面详细讲解这 ...

随机推荐

  1. 关于fork有意思的两道题目

    http://www.spongeliu.com/123.html 第一题,计算下面代码理论上总共打印了多少行:(网易2011笔试题) #include #include #include int m ...

  2. [转]Animation 动画详解(一)——alpha、scale、translate、rotate、set的xml属性及用法

    转载:http://blog.csdn.net/harvic880925/article/details/39996643 前言:这几天做客户回访,感触很大,用户只要是留反馈信息,总是一种恨铁不成钢的 ...

  3. SEO中最常见的几个错误

    昨天答应给放点干活的,今天如约而来! SEO中最常见的几个错误: 1.关键词   人们往往想当然的选择自己喜欢的keyword,但用户在搜索时,根本不会使用它们.比方说,你选择"优化果酱&q ...

  4. tcp ip参数详解

    http://www.cnblogs.com/digdeep/p/4869010.html 1. TCP/IP模型 我们一般知道OSI的网络参考模型是分为7层:“应表会传网数物”——应用层,表示层,会 ...

  5. iOS-系统定位功能

    ios系统定位 前期准备 系统定位功能,需要用到框架:CoreLocation/CoreLocation.h, 然后导入文件#import <CoreLocation/CoreLocation. ...

  6. 如何判断Fragment是否对用户可见

    背景 最近在开发中遇到了一个问题.我们的app需要统计用户的页面路径,也就是用户使用各个页面的情况.这就需要在不同的页面跳入和跳出时记录下来.但是我们的app主要是由Fragment构成的.而在不同的 ...

  7. 面试时,问哪些问题能试出一个Android应用开发者真正的水平?

    一般面试时间短则30分钟,多则1个小时,这么点时间要全面考察一个人难度很大,需要一些技巧,这里我不局限于回答题主的问题,而是分享一下我个人关于如何做好Android技术面试的一些经验: 面试前的准备 ...

  8. (tomcat访问不了的两种解决方法)Bad Request(Invalid Hostname)

    显示这个页面的时候一般有几中解决方法: 第一种就是如下图所示的方法: 具体步骤是: 1.也就是左下角win的“运行”中输入cmd进入doc窗口中 2.输入代码:netstat -ano 3.找到占用8 ...

  9. Android 开发笔记——通过 Intent 传递类对象

    Android中Intent传递类对象提供了两种方式一种是 通过实现Serializable接口传递对象,一种是通过实现Parcelable接口传递对象. 要求被传递的对象必须实现上述2种接口中的一种 ...

  10. JavaScript Array(数组) 对象

    更多实例 合并两个数组 - concat() 合并三个数组 - concat() 用数组的元素组成字符串 - join() 删除数组的最后一个元素 - pop() 数组的末尾添加新的元素 - push ...