hi

周五咯~~

1、LAMP配置完结篇

五、LAMP配置环境优化

5.4 虚拟主机工作原理

apache的虚拟主机。virtual-host

用不同的域名访问不同的目录——手动模拟dns

修改host文件即可实现。具体就是主机地址 域名

复习

liang@liang-andy:~$ sudo apt-get install apache2

liang@liang-andy:~$ sudo apt-get install php5
然后加载/检查php5.load这个php实现对apache2操作的模块(LAMP的互相,就是模块的启动/连接)
liang@liang-andy:~$ cat /etc/apache2/mods-enabled/php5.load
liang@liang-andy:~$ sudo apt-get install mysql-server

sudo apt-get install apache2 php5 mysql-server php5-mysql

liang@liang-andy:~$ sudo service mysql restart
liang@liang-andy:~$ sudo service apache2 restart

----创建phpinfo探针

先装vim

sudo apt-get install vim

再切换到php的www文件夹,用cd命令

cd /var/www/html(14.4版本)

然后在这里创建一个php文件

sudo vim info.php

写php代码

<?php
echo mysql_connect('localhost','root','hanhan123') ? 'Hoho' : 'WTF';

phpinfo();
然后esc键,输入:wq保存退出

http://192.168.1.100/info.php 浏览器输入验证结果

复习结束

5.5 安装phpmyadmin

--

apt-get命令

sudo apt-get install phpmyadmin

sudo ln -s /usr/share/phpmyadmin/ /var/www/pma

 六、服务器集群了解

国内外有很多著名的巨型服务器集群。

用于同时处理大批量的请求

-----------------------------------

2、PHP的OOP编程

四、OOP的高级实践

程序准备

<?php
date_default_timezone_set("PRC");
/**
* 1. 类的定义以class关键字开始,后面跟着这个类的名称。类的名称命名通常每个单词的第一个字母大写。
* 2. 定义类的属性
* 3. 定义类的方法
* 4. 实例化类的对象
* 5. 使用对象的属性和方法
*/
class NbaPlayer
{
// 类的属性的定义
public $name="Jordan";// 定义属性
public $height="198cm";
public $weight="98kg";
public $team="Bull";
public $playerNumber="23";

// 类的方法的定义
public function run() {
echo "Running\n";
}

public function jump(){
echo "Jumping\n";
}
public function dribble(){
echo "Dribbling\n";
}
public function shoot(){
echo "Shooting\n";
}
public function dunk(){
echo "Dunking\n";
}
public function pass(){
echo "Passing\n";
}
}

/**
* 1. 类实例化为对象时使用new关键字,new之后紧跟类的名称和一对括号。
* 2. 使用对象可以像使用其他值一样进行赋值操作
*/
$jordan = new NbaPlayer();
// 访问对象的属性使用的语法是->符号,后面跟着属性的名称
echo $jordan->name."\n";
// 调用对象的某个方法使用的语法是->符号,后面跟着方法的名称和一对括号
$jordan->run();
$jordan->pass();

?>

 4.1 继承

也就是对象相似的部分,可以多处使用——避免代码冗余,开发效率提高。

优点:父类中定义的了,子类中无需再次定义——效率高;对于外部,表现一致(父类是一样的);重写,来修改子类。

举个栗子

class Human{
public $name;
public $height;
public $weight;

public function eat($food){
echo $this->name."'s eating".$food."\n";
}
}

人类作为父类,然后nba球员作为子类

class NbaPlayer extends Human{

试着直接通过子类调用父类中的function

$jordan->eat("apple");

输出

Jordan's eating apple

没有问题!子类是可以直接调用父类的属性和方法的!!(在子类的对象上可以直接访问父类中定义的方法和属性)

毕竟从它的意思来看,子类就是父类的延伸。

另外,父类中的属性可以在子类中进行访问(实际上,简单的理解就是,所有的子类都是大于等于父类的对象,想象一下文氏图)

类的继承,用extends,只能跟一个“爸爸”——php的单继承原则

4.2 访问控制

所有的属性和方法都有访问权限的选择——选择可以被谁访问

public:公有,任何地方

protected:受保护的,被自身以及其子类

private:私有,只能被自身访问

举个private的栗子

在Nbaplayer这个子类中,新增加定义

private $age="44";

public function getAge(){
echo $this->name."'s age is ".$this->age;
}

//试着调用private,直接以及通过内部的public函数
//$jordan->age;
$jordan->getAge();

然后,关于protected,范围紧紧的限制在了父类中和子类中,也就是说,出了子类的定义那个大括号就失效了!

4.3 静态成员

可以简单的理解为常量(?)

static

bu xiang xie le

周五了啦啦啦啦-LAMP+PHP‘s OOP的更多相关文章

  1. Linux安装LAMP开发环境及配置文件管理

    Linux主要分为两大系发行版,分别是RedHat和Debian,lamp环境的安装和配置也会有所不同,所以分别以CentOS 7.1和Ubuntu 14.04做为主机(L) Linux下安装软件,最 ...

  2. Web应用之LAMP源码环境部署

    一.LAMP环境的介绍 1.LAMP环境的重要性 思索许久,最终还是决定写一篇详细的LAMP的源码编译安装的实验文档,一来是为了给自己一个交代,把技术进行系统的归纳,将技术以极致的形式呈现出来,做为一 ...

  3. 【笔记】LAMP 环境无脑安装配置 Centos 6.3

    p.p1 { margin: 0.0px 0.0px 5.0px 0.0px; font: 12.0px Times; color: #ff2500 } p.p2 { margin: 0.0px 0. ...

  4. LAMP坏境和LNMP环境安装Nagios4.1.1和基本配置

    ----------------------------------------以下内容为笔者生产环境的监控,安装都是经过一步步测试的-------------------------------- ...

  5. 1-web应用之LAMP源码环境搭建

    目录 一.LAMP环境的介绍     1.LAMP环境的重要性     2.LAMP组件介绍 二.Apache源码安装     1.下载Apache以及相关依赖包     2.安装Apache以及相关 ...

  6. CentOS7 配置LAMP

    这两天要带新同事.没办法,只有现学现卖,又回到Linux的怀抱了.今晚想配置一下LAMP环境,但是之前用的6.6,今晚想闷声做大死,用一次7试试.网上找了很多教程,但是好像转载的都不负责任,有些到下一 ...

  7. Ubuntu 16.04 LAMP server 指南 - 配置 Apache2.4,PHP7,和MariaDB(而不是MySQL)

    翻译自:https://www.howtoforge.com/tutorial/install-apache-with-php-and-mysql-on-ubuntu-16-04-lamp/ 昨天在虚 ...

  8. LAMP(1) 在VirtualBox里安装Ubuntu Server

    问题0.虚拟机中安装lamp环境 问题解决: 来自百度经验 问题1. 用putty远程登陆linux系统,显示network error connection refused 问题解决 问题2. my ...

  9. ubuntu10.04编译安装LAMP

    ubuntu10.04编译安装LAMP以及简单wordpress的使用 : http://linuxme.blog.51cto.com/1850814/971631 一.源码安装LAMP 网上有一堆关 ...

随机推荐

  1. angular源码分析:angular的整个加载流程

    在前面,我们讲了angular的目录结构.JQLite以及依赖注入的实现,在这一期中我们将重点分析angular的整个框架的加载流程. 一.从源代码的编译顺序开始 下面是我们在目录结构哪一期理出的an ...

  2. jQuery实例集合

    一.返回顶部 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UT ...

  3. 带你秒学JavaScript

    JavaScript是一门编程语言,浏览器内置了JavaScript语言的解释器,所以在浏览器上按照JavaScript语言的规则编写相应代码之,浏览器可以解释并做出相应的处理.是静态网页转变为动态的 ...

  4. 高清VGA编码器|上海视涛科技

    VGA编码器(E200)简介 高清VGA编码器是上海视涛科技出品的高性能VGA编码产品.该VGA编码器是上海视涛科技完全自主研发,并适用于VGA信号的编码采集及网络传输的专用硬件设备.可兼容各厂家的N ...

  5. SharePoint 2013 通过HttpModule 管理视图权限

    HttpModule工作原理 HttpModule负责监听HttpRequest,当一个HTTP请求到达HttpModule时,整个ASP.NET Framework系统还并没有对这个HTTP请求做任 ...

  6. Android之手机向导以及设置中心模块的开发

    当我们使用的新的软件的时候,我们首先需要教用户如何使用我们的软件,当用户学习完使用教程,下次再登录的时候,我们应该直接跳到我们的功能界面,下面我来展示一下我学习视频做的效果图:手机防盗这个功能模块就是 ...

  7. Android之登录时密码的保护

    在很多的Android项目中都需要用户登录.注册.这样的话在开发中做好保护用户密码的工作就显得尤为重要.这里我把自己的密码保护方法记录下来. 这是我建了一个保存密码的文件,以便于检查自己保存密码或者上 ...

  8. NSFileManager和NSFileHandler的作用

    NSFileManager类可以管理文件系统中的文件和目录,也可以定位.判断是否存在.创建.拷贝.删除文件和目录,还可以获得文件和目录的信息: 对于读写文件,NSFileManager只可以读写字符串 ...

  9. git 上的pull request 是什么意思?

    1.git 上有常见的pull request 功能 2.pull request 的含义 解释一:    有一个仓库,叫Repo A.你如果要往里贡献代码,首先要Fork这个Repo,于是在你的Gi ...

  10. 【代码笔记】iOS-提醒时间的选择

    一,效果图. 二,工程图. 三,代码. RootViewController.h #import <UIKit/UIKit.h> @interface RootViewController ...