【问题标题】:Php slice last item in an array not workingphp切片数组中的最后一项不起作用
【发布时间】:2015-08-10 22:04:08
【问题描述】:
<?php 
$current_store_type = get_field("valj_typ");
$last_type = array_slice($current_store_type, -1, 1, true);
$type_title = "";
      switch($last_type){
          case "Butik":
              $type_title = "Alla butiker";
              break;
          case "Cafe":
              $type_title = "Alla caféer";
              break;
          case "Restaurang":
              $type_title = "Alla restauranger";
              break;
          case "Service":
              $type_title = "Alla Serviceställen";
              break;
      }
?>

我想切出$current_store_type 数组中的最后一项。但它仅在该字段具有一个变量时才有效,一旦我将它放入数组中,它就不起作用了。

更新:也不工作

$current_store_type = get_field("valj_typ");
$last_type = end($current_store_type);
$type_title = "";
      switch($last_type){
          case "Butik":
              $type_title = "Alla butiker";
              break;
          case "Cafe":
              $type_title = "Alla caféer";
              break;
          case "Restaurang":
              $type_title = "Alla restauranger";
              break;
          case "Service":
              $type_title = "Alla Serviceställen";
              break;
      }

【问题讨论】:

  • 你想达到什么目的?
  • array_slice 给你一个数组。 switch 只接受一个值。例如,您必须打开 $last_type[0]...

标签: php arrays wordpress


【解决方案1】:

我认为这就是您想要实现的目标。它不使用 array_slice 但会正常运行。如果您坚持使用array_slice,请查看@Random 在您的问题中的评论。

$last_type = end($current_store_type);

【讨论】:

  • 你好,卡尔。我做到了,仍然无法正常工作:(用代码更新了第一篇文章
  • 数组$current_store_type的输出是什么?使用print_r(),这样我们就可以看到内容了。
  • 它什么也不打印,但是如果 get_field("valj_typ");只传递一个变量。一旦它更多,它就会破裂
  • 但是 get_field("valj_typ") 必须返回一些东西。如果它只有一个值,它会返回一个字符串还是一个数组?能否请您发布该功能的代码
  • 实际上您的解决方案有效。我不得不手动进入并更新 wordpress 中的所有帖子,以便它重新缓存或其他东西。谢谢!
【解决方案2】:

这段代码对我有用:

$last_type = end($current_store_type);

【讨论】:

    猜你喜欢
    • 2011-10-07
    • 2023-03-10
    • 2018-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-11
    • 1970-01-01
    相关资源
    最近更新 更多