如何为PHP安装mongodb的扩展
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何为PHP安装mongodb的扩展相关的知识,希望对你有一定的参考价值。
参考技术A 1.首先下载php的mongodb扩展从http://pecl.php.net/package/mongo这个网址下载mongodb的扩展源码包
1
wget http://pecl.php.net/get/mongo-1.4.5.tgz
2.解压安装包
1
tar zxf mongo-1.4.5.tgz
3.进入解压目录,运行phpize进行安装准备
1
2
cd mongo-1.4.5
/usr/local/php/bin/phpize
4.安装编译
上述命令运行完后,在目录下就生成了configure文件
使用./configure命令进行安装配置,然后使用make && make install进行编译安装,命令如下:
1
2
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
5.编辑php.ini增加下述一行添加mongodb扩展
1
extension=mongo.so
重启web容器,然后查看phpinfo,看到mongodb的内容就说明安装成功。本回答被提问者和网友采纳
如何为User.php扩展多个内容
我是编码新手,正在尝试将\TCG\Voyager\Models\User
和Authenticatable
一起实现MustVerifyEmail
,但我不知道该怎么做。
我已经尝试过User
类扩展了\TCG\Voyager\Models\User
,Authenticatable
一起实现了MustVerifyEmail
,但这对我不起作用。
我创建了2个单独的类,这也不让我满意。
namespace App;
use Illuminate\Notifications\Notifiable;
use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Foundation\Auth\User as Authenticatable;
class User extends Authenticatable implements MustVerifyEmail extends \TCG\Voyager\Models\User
{
use Notifiable;
/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $fillable = [
'name', 'email', 'password',
];
/**
* The attributes that should be hidden for arrays.
*
* @var array
*/
protected $hidden = [
'password', 'remember_token',
];
/**
* The attributes that should be cast to native types.
*
* @var array
*/
protected $casts = [
'email_verified_at' => 'datetime',
];
}
答案
您不能在PHP
中扩展两个(或多个)类,只能扩展一个。一个解决方案可能是:
- [
Class A
延伸Class B
- [
Class B
延伸Class C
这样,Class A
也将扩展Class C
(通过Class B
)。
根据您的情况:
- [
User
扩展了\TCG\Voyager\Models\User
并实现了MustVerifyEmail
- [
\TCG\Voyager\Models\User
扩展了Authenticatable
这是原因之一,特质是在PHP世界中引入的(虽然不一样)。
以上是关于如何为PHP安装mongodb的扩展的主要内容,如果未能解决你的问题,请参考以下文章
Centos6.5 MongoDB安装以及php_mongo扩展的安装
Mac php7安装mongodb扩展以适配使用mongo扩展的php旧版本代码