zoukankan      html  css  js  c++  java
  • 周五了啦啦啦啦-LAMP+PHP‘s OOP

      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 ";
    }

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

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

    ?>

     4.1 继承

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

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

    举个栗子

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

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

    人类作为父类,然后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 

  • 相关阅读:
    区块链:术语
    比特币术语表
    我的友情链接
    我的友情链接
    我的友情链接
    我的友情链接
    我的友情链接
    我的友情链接
    我的友情链接
    我的友情链接
  • 原文地址:https://www.cnblogs.com/andy1202go/p/5019696.html
Copyright © 2011-2022 走看看