HEX
Server: Apache/2.4.41 (Amazon) OpenSSL/1.0.2k-fips PHP/5.6.40
System: Linux ip-172-31-40-18 4.14.146-93.123.amzn1.x86_64 #1 SMP Tue Sep 24 00:45:23 UTC 2019 x86_64
User: apache (48)
PHP: 5.6.40
Disabled: NONE
Upload Files
File: //usr/share/pear/test/memcached/tests/getmulti.phpt
--TEST--
Memcached::getMulti()
--SKIPIF--
<?php if (!extension_loaded("memcached")) print "skip"; ?>
--FILE--
<?php
include dirname (__FILE__) . '/config.inc';
$m = memc_get_instance ();

class Foo {
	function __toString() {
		return 'a-foo';
	}
}

$data = array();
for ($i = 0; $i < 1000; $i++) {
	$data['key' . $i] = 'value' . $i;
}
$data['a-foo'] = 'a-last';
var_dump($m->setMulti($data));

$keys = array_keys($data);
$keys['last'] = new Foo();

$v = $m->getMulti($keys);
var_dump(is_array($v));
var_dump($m->getResultCode() == Memcached::RES_SUCCESS);
if (is_array($v)) {
	foreach ($v as $key => $value) {
		if (!isset($data[$key]) or $value !== $data[$key]) {
			echo "mismatch \$data['$key'] = \n";
			var_dump($data[$key]);
			var_dump($value);
		}
	}
} else {
	echo "Result not an array\n";
}

var_dump(is_object($keys['last']));

--EXPECT--
bool(true)
bool(true)
bool(true)
bool(true)