1

这是我的 php 文件:-

    <?php
    require "predis-0.8/autoload.php";
    Predis\Autoloader::register();
    try {
        $redis = new Predis\Client();
        }catch (Exception $e) {
    };
    $redis->del("aaa");
    for($i=1;$i<=10;$i++)
    {
    $randNo=rand('1','5');
    $ec = $redis->set("arr",$randNo);
    $str = $redis->get("arr").",";
    echo ($str);
    }
    $comma = implode(",", $str);
    echo ($comma);
?>

我正在将 Redis 与 PHP 一起使用。
我正在尝试内爆 strint。
但它不起作用。
返回我的错误。Warning: implode(): Invalid arguments passed
知道为什么我会收到此警告。
提前致谢。

4

2 回答 2

0

您正在寻找的功能explodenot implode

implode 接受一个数组并将元素与给定的字符串连接在一起。

explode 获取一个字符串,并通过删除该字符串在找到给定字符串的位置将其拆分为一个数组。

$arr = array( 'foo', 'bar');
$imp = implode(',', $arr); # $imp == 'foo,bar'
$exp = explode(',', $imp); # $exp == array('foo', 'bar')

编辑:

在进一步阅读您的代码后。我猜你试图在redis中存储一个数组。为了实现这一点(甚至更复杂的数据结构),您需要将数据转换为字符串。实现这一目标的最简单方法是serializeand unserialize

$data; # contains some data , either array or objects or int or ...
$redis->set('foo', serialize($data));
$other_data = unserialize($redis->get('foo')); # $other_data == $data
于 2013-04-18T08:19:10.117 回答
-2

慧,我认为这两个链接可以帮助你

  1. http://www.w3schools.com/php/func_string_implode.asp

  2. http://www.w3schools.com/php/func_string_explode.asp

于 2013-04-18T08:20:21.353 回答