周五了啦啦啦啦-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\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的更多相关文章
- Linux安装LAMP开发环境及配置文件管理
Linux主要分为两大系发行版,分别是RedHat和Debian,lamp环境的安装和配置也会有所不同,所以分别以CentOS 7.1和Ubuntu 14.04做为主机(L) Linux下安装软件,最 ...
- Web应用之LAMP源码环境部署
一.LAMP环境的介绍 1.LAMP环境的重要性 思索许久,最终还是决定写一篇详细的LAMP的源码编译安装的实验文档,一来是为了给自己一个交代,把技术进行系统的归纳,将技术以极致的形式呈现出来,做为一 ...
- 【笔记】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. ...
- LAMP坏境和LNMP环境安装Nagios4.1.1和基本配置
----------------------------------------以下内容为笔者生产环境的监控,安装都是经过一步步测试的-------------------------------- ...
- 1-web应用之LAMP源码环境搭建
目录 一.LAMP环境的介绍 1.LAMP环境的重要性 2.LAMP组件介绍 二.Apache源码安装 1.下载Apache以及相关依赖包 2.安装Apache以及相关 ...
- CentOS7 配置LAMP
这两天要带新同事.没办法,只有现学现卖,又回到Linux的怀抱了.今晚想配置一下LAMP环境,但是之前用的6.6,今晚想闷声做大死,用一次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/ 昨天在虚 ...
- LAMP(1) 在VirtualBox里安装Ubuntu Server
问题0.虚拟机中安装lamp环境 问题解决: 来自百度经验 问题1. 用putty远程登陆linux系统,显示network error connection refused 问题解决 问题2. my ...
- ubuntu10.04编译安装LAMP
ubuntu10.04编译安装LAMP以及简单wordpress的使用 : http://linuxme.blog.51cto.com/1850814/971631 一.源码安装LAMP 网上有一堆关 ...
随机推荐
- Slideout.js – 触摸滑出式 Web App 导航菜单
Slideout.js 是为您的移动 Web 应用开发的触摸滑出式的导航菜单.它没有依赖,自由搭配简单的标记,支持原生的滚动,您可以轻松地定制它.它支持不同的 CSS3 转换和过渡.最重要的是,它只是 ...
- JavaScript实现HTML5烟花特效
烟花效果如下(请使用支持HTML5的浏览器查看):点击这里查看效果:http://keleyi.com/keleyi/phtml/html5/14.htm 源代码如下: ;}</style> ...
- .net学习之路——调试程序
没有人的程序是完美的,这条规则对所有的程序员来说也成立.没有人能在第一次就写出完美的程序来. 调试工具分为两类,一类是被动的,你等待它们告诉你问题:还有一类是主动的,允许你在程序运行时深入观察,并在逐 ...
- Eclipse spket插件 内置js文件
这一篇将怎么在spket内置js文件,而不用用户自己去添加. 1. 在开发的Eclipse的 运行配置将下面几个插件勾选上. 2. 在org.eclipse.ui.startup拓展里执 ...
- AngularJS学习笔记之依赖注入
最近在看AngularJS权威指南,由于各种各样的原因(主要是因为我没有money,好讨厌的有木有......),于是我选择了网上下载电子版的(因为它不要钱,哈哈...),字体也蛮清晰的,总体效果还不 ...
- JQuery+HTML5+CSS3制作时间轴插件,支持响应式布局
一.效果图预览 (图一) (图二) 附注说明: 图一是浏览器宽度像素大于560px下的展示效果,图二是在浏览器宽度像素小于560px下的展现效果.使用的是CSS3的Media Query(媒体查询)实 ...
- CSS3利用text-shadow属性实现多种效果的文字样式展现
一.效过图展示: 已经是比较久之前学习的文字效果了.但是还是很实用很有趣的.利用CSS3提供的text-shadow属性可以给页面上的文字添加阴影效果,因此可以替换掉之前使用过的一些繁琐的图片.到目前 ...
- OPENGLES 基础(一些链接和随笔)
http://imgtec.eetrend.com/blog/3912 http://blog.csdn.net/zj8792612/article/details/16116145 在线着色器编 ...
- 什么时候用Application的Context,什么时候用Activity的Context
单例模式用application的context 如果我们在Activity A中或者其他地方使用Foo.getInstance()时,我们总是会顺手写一个『this』或者『mContext』(这个变 ...
- 属性观察器willSet与didSet
willSet与didSet是swift特有的,就是监听属性值的变化,但有一个小注意点. willSet与didSet调用时机:对象创建后的第一次赋值时开始调用.也就是说,初始化时(包含重载的init ...