2012-01-28 92 views
7

我正在使用Memcached::set()Memcached::get()方法。該文檔指出,如果發生錯誤,或者通常檢查這些方法的狀態,我應該致電Memcached::getResultCode()PHP Memcached擴展結果代碼

我在哪裏可以找到結果代碼的完整列表,結果代碼代表什麼以及它的數字值是什麼?

我發現的最好的東西是從Memcached::getResultCode()的一些意見,但列表中不包括847。另一個列表位於Memcached Predefined Constants頁面,但不包含數字值。

回答

14

我在the libmemcached source code找到了錯誤代碼。

0 = MEMCACHED_SUCCESS 
1 = MEMCACHED_FAILURE 
2 = MEMCACHED_HOST_LOOKUP_FAILURE // getaddrinfo() and getnameinfo() only 
3 = MEMCACHED_CONNECTION_FAILURE 
4 = MEMCACHED_CONNECTION_BIND_FAILURE // DEPRECATED see MEMCACHED_HOST_LOOKUP_FAILURE 
5 = MEMCACHED_WRITE_FAILURE 
6 = MEMCACHED_READ_FAILURE 
7 = MEMCACHED_UNKNOWN_READ_FAILURE 
8 = MEMCACHED_PROTOCOL_ERROR 
9 = MEMCACHED_CLIENT_ERROR 
10 = MEMCACHED_SERVER_ERROR // Server returns "SERVER_ERROR" 
11 = MEMCACHED_ERROR // Server returns "ERROR" 
11 = MEMCACHED_CONNECTION_SOCKET_CREATE_FAILURE = MEMCACHED_ERROR 
12 = MEMCACHED_DATA_EXISTS 
13 = MEMCACHED_DATA_DOES_NOT_EXIST 
14 = MEMCACHED_NOTSTORED 
15 = MEMCACHED_STORED 
16 = MEMCACHED_NOTFOUND 
17 = MEMCACHED_MEMORY_ALLOCATION_FAILURE 
18 = MEMCACHED_PARTIAL_READ 
19 = MEMCACHED_SOME_ERRORS 
20 = MEMCACHED_NO_SERVERS 
21 = MEMCACHED_END 
22 = MEMCACHED_DELETED 
23 = MEMCACHED_VALUE 
24 = MEMCACHED_STAT 
25 = MEMCACHED_ITEM 
26 = MEMCACHED_ERRNO 
27 = MEMCACHED_FAIL_UNIX_SOCKET // DEPRECATED 
28 = MEMCACHED_NOT_SUPPORTED 
29 = MEMCACHED_NO_KEY_PROVIDED /* Deprecated. Use MEMCACHED_BAD_KEY_PROVIDED! */ 
30 = MEMCACHED_FETCH_NOTFINISHED 
31 = MEMCACHED_TIMEOUT 
32 = MEMCACHED_BUFFERED 
33 = MEMCACHED_BAD_KEY_PROVIDED 
34 = MEMCACHED_INVALID_HOST_PROTOCOL 
35 = MEMCACHED_SERVER_MARKED_DEAD 
36 = MEMCACHED_UNKNOWN_STAT_KEY 
37 = MEMCACHED_E2BIG 
38 = MEMCACHED_INVALID_ARGUMENTS 
39 = MEMCACHED_KEY_TOO_BIG 
40 = MEMCACHED_AUTH_PROBLEM 
41 = MEMCACHED_AUTH_FAILURE 
42 = MEMCACHED_AUTH_CONTINUE 
43 = MEMCACHED_PARSE_ERROR 
44 = MEMCACHED_PARSE_USER_ERROR 
45 = MEMCACHED_DEPRECATED 
46 = MEMCACHED_IN_PROGRESS 
47 = MEMCACHED_SERVER_TEMPORARILY_DISABLED 
48 = MEMCACHED_SERVER_MEMORY_ALLOCATION_FAILURE 
49 = MEMCACHED_MAXIMUM_RETURN /* Always add new error code before */ 
+2

優秀。這裏是[**我剛剛創建的一個pastebin **](http://pastebin.com/dE9y0xBi),它將上面列出的libmemcached返回代碼鏈接到PHP擴展常量。它直接從'php_memcached.c'擴展代碼中拉出來。希望我們的共同努力可以爲人們節省一些時間:) – rdlowrey 2012-01-28 04:59:56

+0

這一個非常棒,我已經將它添加爲Memcached常量頁面的註釋。那裏有一個評論,但很過時。 http://br2.php.net/manual/en/memcached.constants.php#118557 – igorsantos07 2015-12-28 15:50:39