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. java工具类--数据库操作封装类

    java对数据库操作简单处理,如下代码即可,封装了 增删改查及获取连接.关闭连接. 代码如下: package com.test; import java.sql.Connection; import ...

  2. ORACLE EXP命令

    本文对Oracle数据的导入导出 imp ,exp 两个命令进行了介绍, 并对其对应的參数进行了说明,然后通过一些演示样例进行演练,加深理解.文章最后对运用这两个命令可能出现的问题(如权限不够,不同o ...

  3. jquery做个日期选择适用于手机端

    第一步:做个 文本框用于显示年月日的 第二步:点击文本框触发bootstrap模态框并显示 第三步:我是建一个外部js页面写的 js中获得当前时间是年份和月份,形如:201208       //获取 ...

  4. 分布式还是混合式? 谈CDN架构对服务质量的影响

    传统分布式模型 通 常,内容分发网络(CDN)採用分布式模型.在这样的模型里, 用户的文件存放在一个源server上.而且由大量边缘server负责分发这些文件.这些边缘server的磁盘空间比較小. ...

  5. PC机安装Qt以及QT交叉编译环境 分类: OpenCV ZedBoard shell ubuntu Eye_Detection 2014-11-08 18:57 246人阅读 评论(0) 收藏

    PC: apt-get install qtcreator Qt Embedded for ZedBoard: 下载qt-everywhere-opensource-src-4.7.3.tar.gz, ...

  6. Assigning retained object to unsafe property;object will be released after assignment

    解决方法,将变量 @property (assign) UILabel *titleView; 改为 @property (retain) UILabel *titleView;

  7. [Angular + Unit] AngularJS Unit testing using Karma

    http://social.technet.microsoft.com/wiki/contents/articles/32300.angularjs-unit-testing-using-karma- ...

  8. codevs 3119 高精度练习之大整数开根 (各种高精+压位)

    /* codevs 3119 高精度练习之大整数开根 (各种高精+压位) 二分答案 然后高精判重 打了一个多小时..... 最后还超时了...压位就好了 测试点#1.in 结果:AC 内存使用量: 2 ...

  9. Java_Activiti5_菜鸟也来学Activiti5工作流_之与Spring集成(三)

    <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...

  10. 国人编写的开源 .net Ioc 框架——My.Ioc 简介

    My.Ioc 是作者开发的一款开源 IoC/DI 框架,下载地址在此处.它具有下面一些特点: 高效 在实现手段上,My.Ioc 通过使用泛型.缓存.动态生成代码.延迟注册.尽量使用抽象类而非接口等方式 ...