私は巨大なデータセットのPHPを使用してmongo dbの2つのフィールドを連結しようとしています。以下は、これまでに見つけて試したサンプルソリューションですが、これはPHPでは動作しません。以下のコードのいずれかがあれば、誰でも必要な修正を行うことができます。PHPを使用してmongo dbのフィールドを連結
var pipeline = [
{
"$project": {
"data1": 1,
"data2": { $concat: [ "$data1", " ", "$data2" ] }
}
}
],
cursor = db.collection.aggregate(pipeline),
bulkUpdateOps = cursor.map(function (doc) {
return {
"updateOne": {
"filter": { "_id": doc._id },
"update": { "$set": { "data2": doc.data2 } }
}
};
});
db.collection.bulkWrite(bulkUpdateOps);
あなたが作曲コマンドを使用して、コメントで提案されているように私はモンゴ-PHPライブラリをインストールしています:
$composer require "mongodb/mongodb=^1.0.0"
が、それは仕事をdidntの。 PHPのmongoドライバは1.6.12です。 mongo dbバージョンは3.2.3です。エラーは次のようになります。
Your version of PHP, 5.4.16, is affected by CVE-2013-6420 and cannot safely perform certificate validation, we strongly suggest you upgrade.
./composer.json has been created
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
Problem 1
- mongodb/mongodb 1.0.1 requires ext-mongodb ^1.1.0 -> the requested PHP extension mongodb is missing from your system.
- mongodb/mongodb 1.0.0 requires ext-mongodb ^1.1.0 -> the requested PHP extension mongodb is missing from your system.
- Installation request for mongodb/mongodb ^1.0.0 -> satisfiable by mongodb/mongodb[1.0.0, 1.0.1].
To enable extensions, verify that they are enabled in those .ini files:
- /etc/php.ini
- /etc/php.d/curl.ini
- /etc/php.d/dom.ini
- /etc/php.d/fileinfo.ini
- /etc/php.d/json.ini
- /etc/php.d/mbstring.ini
- /etc/php.d/mysql.ini
- /etc/php.d/mysqli.ini
- /etc/php.d/pdo.ini
- /etc/php.d/pdo_mysql.ini
- /etc/php.d/pdo_sqlite.ini
- /etc/php.d/phar.ini
- /etc/php.d/posix.ini
- /etc/php.d/sqlite3.ini
- /etc/php.d/sysvmsg.ini
- /etc/php.d/sysvsem.ini
- /etc/php.d/sysvshm.ini
- /etc/php.d/wddx.ini
- /etc/php.d/xmlreader.ini
- /etc/php.d/xmlwriter.ini
- /etc/php.d/xsl.ini
- /etc/php.d/zip.ini
You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.
Installation failed, deleting ./composer.json.
このライブラリをインストールするにはヘルプが必要です。間違ったバージョンをインストールしていますか?
あなたがPHPコードの試みを表示することができますか? – chridam