【问题标题】:PHP Warning: implode(): Invalid arguments passed inPHP 警告:implode():传入的参数无效
【发布时间】:2016-08-26 06:49:47
【问题描述】:

我正在使用 Osclass 3.5.3。在我的日志文件中,我不断看到以下错误:

“PHP 警告:implode():传入的参数无效”

有问题的行是:

<!-- <small><?php _e("Location", 'aiclassy');?>: <cite title="<?php echo implode(', ', $location); ?>"><?php echo osc_user_city(); ?><span class="glyphicon glyphicon-map-marker"></span></cite></small><br /><br /> -->
<!-- <span class="glyphicon glyphicon-envelope"></span> <?php printf(__('%s', 'aiclassy'), osc_item_contact_email()); ?><br /> -->

整个代码是这样包裹的:

<div class="well">
                    <div class="row">
                      <div class="col-sm-12">            

        <!-- <small><?php _e("Location", 'aiclassy');?>: <cite title="<?php echo implode(', ', $location); ?>"><?php echo osc_user_city(); ?><span class="glyphicon glyphicon-map-marker"></span></cite></small><br /><br /> -->
        <!-- <span class="glyphicon glyphicon-envelope"></span> <?php printf(__('%s', 'aiclassy'), osc_item_contact_email()); ?><br /> -->




                <?php osc_run_hook('item_detail', osc_user() ); ?>
                <?php //voting_item_detail_user(); ?>

                      </div>


                </div>

                </div>

我该如何解决这个...有什么建议吗?谢谢大家。

【问题讨论】:

  • 嗯,你是在传递一个数组来内爆吗?
  • ', ' // 你为什么在逗号后面传递空格作为分隔符

标签: php osclass


【解决方案1】:

如果您不确定 $location 的值是数组还是字符串,您可以在回显该值时立即决定。

<?php echo is_array($location) ? implode(', ', $location) : $location; ?>

这是为了替代当前的

<?php echo implode(', ', $location); ?>

【讨论】:

  • 谢谢你,Thomas - 这确实是解决方案!
【解决方案2】:

您需要将array 传递给implode 秒参数。

在此处查看documentation

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多