- 76
- 0
- 约6.48千字
- 约 10页
- 2017-04-18 发布于北京
- 举报
1. 写出 php 的 public、protected、private 三种访问控制模式的区别(新浪网技术部)
public:公有,任何地方都可以访问
protected:继承,只能在本类或子类中访问,在其它地方不允许访问
private:私有,只能在本类中访问,在其他地方不允许访问
相关题目:请写出 PHP5 权限控制修饰符
private protected public
2. 设计模式考察:请用单态设计模式方法设计类满足如下需求:
请用 PHP5 代码编写类实现在每次对数据库连接的访问中都只能获得唯一的一个数据库连接,具体连接数据库的详细代码忽略,请写出主要逻辑代码(新浪网技术部)
?php
class Mysql
{
private static $instance = null;
private $conn;
// 构造方法,设置为private,不允许通过new获得对象实例
private function __construct(argument)
{
$conn = mysql_connect(localhost,root,root);
}
// 获取实例方法
public function getInstance()
{
if (!self::$instance instanceof self) {
self::$instance = new self;
}
return self::$instance;
}
// 禁止克隆
private function __clone(){}
}
// 获得对象
$db = Mysql::getInstance();
?
3. 写出下列程序的输出结果(新浪网技术部)
?php
class a
{
protected $c;
public function a()
{
$this-c = 10;
}
}
class b extends a
{
public function print_data()
{
return $this-c;
}
}
$b = new b();
echo $b-print_data();
?
输出结果 10
4. PHP5 中魔术方法函数有哪几个,请举例说明各自的用法 (腾讯 PHP 工程师笔试题)
__sleep serialize 之前被调用__wakeup unserialize 时被调用__toString 打印一个对象时被调用__set_state 调用 var_export 时被调用,用__set_state的返回值作为 var_export 的返回值__construct 构造函数,实例化对象时被调用__destruct 析构函数,当对象销毁时被调用__call 对象调用某个方法,若存在该方法,则直接调用,若不存在,则调用__call 函数__get 读取一个对象属性时,若属性存在,则直接返回,若不存在,则??用__get 函数__set 设置一个对象的属性时,若属性存在,则直接赋值,若不存在,则调用__set 函数__isset 检测一个对象的属性是否存在时被调用__unset unset 一个对象的属性时被调用__clone 克隆对象时被调用__autoload 实例化一个对象时,如果对应的类不存在,则该方法被调用
相关题目:请写出 php5 的构造函数和析构函数
构造函数:__construct析构函数:__destruct
5. 如何使用下面的类,并解释下面什么意思?
?php
class test{
function Get_test($num){
$num = md5(md5($num).En);
return $num;
}
}
$testObject = new test();
$encryption = $testObject-Get_test(itcast);
echo $encryption
原创力文档

文档评论(0)