2016-03-29 36 views
1

我编译库的couchbase为php7:https://github.com/couchbase/php-couchbase/tree/php7。 当我尝试进行操作时(upsert),我有一个错误。与couchbase sdk2 Php7尝试在couchbase中插入值时返回警告

$cluster = new CouchbaseCluster('127.0.0.1', "user", "password"); 
$db = $cluster->openBucket('default'); 
$db->upsert('testdoc', ['name' =>'Frank']); 

PHP Warning: Invalid callback , no array or string given in Unknown on line 0 
PHP Stack trace: 
PHP 1. {main}() php shell code:0 
PHP 2. CouchbaseBucket->upsert() php shell code:1 
PHP 3. _CouchbaseBucket->upsert() [CouchbaseNative]/CouchbaseBucket.class.php:134 
PHP Warning: Invalid callback , no array or string given in Unknown on line 0 
PHP Stack trace: 
PHP 1. {main}() php shell code:0 
PHP 2. CouchbaseBucket->upsert() php shell code:1 
PHP 3. _CouchbaseBucket->upsert() [CouchbaseNative]/CouchbaseBucket.class.php:134 

如果我尝试

$db->upsert('testdoc', 'Frank'); 

$db->upsert('testdoc', json_encode(['key' => 'Frank'])); 

产生相同的警告,并在couchbase该键(testdoc)插入一个空字符串。如何解决这个错误?

+0

哪个OS /体系结构和哪个特定的PHP版本? –

回答

0

该分支仍在开发中,并且实际上是扩展端口,因为扩展开发人员的API已经发生了很大变化。我们已经完成了部分工作,在某些平台上工作,但有足够的已知问题尚未发布。让我们知道您使用的是什么操作系统/体系结构和特定的PHP版本会很有帮助,所以我可以验证我们的测试覆盖率是否也是如此 - 但这只是一个已知问题。

+0

PHP的版本是:PHP 7.0.4-7 + deb.sury.org〜trusty + 2(cli)(NTS) Zend Engine v3.0.0,版权所有(c)1998-2016 Zend Technologies 与Zend OPcache v7。 SO-0.6-dev是:DISTRIB_ID = LinuxMint DISTRIB_RELEASE = 17.1 DISTRIB_CODENAME =丽贝卡 DISTRIB_DESCRIPTION = “Linux Mint的17.1丽贝卡” NAME = “Ubuntu的” VERSION = “14.04.2 LTS,可信赖的塔尔羊” ID = ubuntu的 ID_LIKE = Debian的 PRETTY_NAME =“Ubuntu 14.04.2 LTS” VERSION_ID =“14.04” HOME_URL =“http://www.ubuntu.com/” SUPPORT_URL =“http://help.ubuntu.com/” BUG_REPORT_URL =“http: //bugs.launchpad.net/ubuntu/“ –

+1

谢谢你。请注意,截至最后一天左右,我们在分支上有一些新的提交。你可以尝试最新的? –

+0

我不'看到新的提交https://github.com/couchbase/php-couchbase/commits/php7或https://github.com/brett19/php-couchbase/commits/php7。存在另一个回购这个扩展? –