drupal CCK 字段中允许的值列表

发布于 2024-08-29 16:42:30 字数 199 浏览 5 评论 0原文

我基本上只是想简单地打印出 CCK 字段中的每个允许值。

我知道允许的值存储在表内的文本字段内:“content_node_field”。

然后这些值存储在“global_settings”中,

我希望以某种方式使用 PHP 循环打印出每个单独的允许值。

然而,所有值都存储在一个文本字段中..我发现很难单独打印每个值。

I'm basically looking to simply print out each of the allowed values in a CCK field..

i know the allowed values are stored inside a text field within the table: 'content_node_field'.

the values are then stored within 'global_settings'

I'm looking to somehow print out each individual allowed value using a PHP loop.

however with all values being stored within one text field.. im finding it hard to print out each value individually.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

埋葬我深情 2024-09-05 16:42:30

像这样的事情应该可以解决问题。

// Get the global_settings like you described.
$serialized_data = db_result(db_query("..."));
// Unserialize the data.
$unserialized_data = unserialize($serialized_data)
// Foreach the allowed values.
$values = array();
foreach(explode("\n", $unserialized_data['allowed_values']) as $value) {
  $values[] = $value;
}

Something like this should do the trick.

// Get the global_settings like you described.
$serialized_data = db_result(db_query("..."));
// Unserialize the data.
$unserialized_data = unserialize($serialized_data)
// Foreach the allowed values.
$values = array();
foreach(explode("\n", $unserialized_data['allowed_values']) as $value) {
  $values[] = $value;
}
千寻… 2024-09-05 16:42:30

如果我没有回答你的问题,你可以通过简单地将 [] 后缀添加到字段名称来创建 PHP 数组,例如:

<input type="text" name="myname[]" />

现在你可以像这样获取数组的值:

foreach($myname as $value)
{
  echo $value . '<br />';
}

< strong>根据评论更新:

您可以使用 json_decode 函数将数据转换为数组,然后进行相应操作:

示例:

$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}';

var_dump(json_decode($json, true));

If I am getting your question right, you can create PHP arrays by simply suffixing the [] to the names of the fields, so for example:

<input type="text" name="myname[]" />

Now you can get the values of the array like this:

foreach($myname as $value)
{
  echo $value . '<br />';
}

Update Based On Comment:

You can use the json_decode function to convert your data to array and then manipulate accordingly:

Example:

$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}';

var_dump(json_decode($json, true));
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文