将 var 作为字符串传递给数组

passing var as string to an array

我相信这非常简单。 我试图将保存在 var 中的值作为数组传递给另一个 var。

我有一个 var $guideinValue,其中包含以逗号分隔的值字符串。这些值代表类别 ID。

当我 echo $guideinValue 它显示 18,19 这是正确的类别 ID。 我试图在 wordpress var $selected_cats.

中使用这些

当我手动输入 $selected_cats = array(18,19); 时一切正常 print_r 的 1$selected_cats1 显示 Array ( [0] => 18 [1] => 19 )

但是当我使用 $selected_cats = array($guideinValue); 时,print_r 显示 Array ( [0] => 18,19 ) 而 c

没有任何作用

为什么会发生这种情况,我该如何修正我的语法?

使用explode函数很简单。

array explode ( string $delimiter , string $string [, int $limit ] );

工作示例:

$array = explode(",", $guideinValue);

这是使用 array_values()、array_filter() 和 explode() 的正确方法

$selected_cats = array_values(array_filter(explode(',', $guideinValue)));

explode() - 中断字符串

array_filter() - 清除空值

array_values() - 重新排列数组索引以从 0

开始