2014-11-21 28 views
0

我的代碼是:入門所需的鍵名

$key1='[email protected]'; 
$key2='[email protected]'; 
$key3='[email protected]'; 

$item=array(
'$key1' => 'casfid=qwert12345', 
'$key2' => '2=1234567890', 
'$key3' => 'product name=test ivr' 
); 

$static_client->setMulti($item,time() + 300); 

$null = null; 
$keys = array_keys($item); 
$got = $static_client->getMulti($keys, $null, Memcached::GET_PRESERVE_ORDER); 

foreach ($got as $k => $v) { 
echo "$k $v\n"; 

但是,輸出是:

$key1 casfid=qwert12345 
$key2 2=1234567890 
$key3 product name=test ivr 

是否有通過它我可以得到想要的 '$鍵1' 的值的任何方式,「$ KEY2 ','$ key3'定義在上面。

感謝

+0

爲什麼'$ key1','$ key2'和'$ key3'是一樣的?它會覆蓋對方。 $鍵1,$鍵2的 – vaso123 2014-11-21 12:56:04

+0

值,$ KEY3可以相同或不同 – hemanonearth 2014-11-21 12:59:37

回答

0

定義數組的時候,而不是做這從關鍵變量中刪除引號:

$item=array(
    '$key1' => 'casfid=qwert12345', 
    '$key2' => '2=1234567890', 
    '$key3' => 'product name=test ivr' 
); 

這樣做:

$item=array(
    $key1 => 'casfid=qwert12345', 
    $key2 => '2=1234567890', 
    $key3 => 'product name=test ivr' 
); 

編輯: 要允許每個鍵上有多個值,每個鍵必須包含一個數組:

$item = array(); 
$item[$key1][] = 'casfid=qwert12345'; 
$item[$key2][] = '2=1234567890'; 
$item[$key3][] = 'product name=test ivr'; 

我會讓你找到正確的方式來閱讀或添加更多的數據。

+0

現在得到以下幾點: [email protected]產品名稱=測試IVR casfid = qwert12345和2 = 1234567890丟失。如果$ key1,$ key2,$ key3的值是相同的,那我怎樣才能得到其他兩個值。 對不起語言,我是新的php和memcache 謝謝 – hemanonearth 2014-11-21 13:00:28

+0

這意味着密鑰是正確的,但由於您在所有$ key變量中使用相同的值,所以它們覆蓋了以前的值。數組中的每個鍵只能保存一個值。 – h00ligan 2014-11-21 13:02:35

+0

對不起,我是新的php。 $ key1,$ key2,$ key3的IF值是相同的,那麼我怎樣才能得到想要的reuslt。 謝謝 – hemanonearth 2014-11-21 13:04:58