Laravel explode()url查询

时间:2017-09-19 16:36:13

标签: php laravel-5.4

在我的数据库中将查询输入存储为BLOB,如下所示:     使= ACURA&安培;模型%5B0%5D = MDX&安培;模型%5B1%5D = NSX&安培;拍卖%5B0%5D = BAYAUC&安培;拍卖%5B1%5D = IAA +大阪

现在在我看来,我试图让它爆炸:

@foreach(explode('=', $url) as $par)
     {{ $par }} 
@endforeach

但是我收到了一个错误:

  

htmlspecialchars()期望参数1为字符串,给定对象

我想输出的最终结果如下: ACURA MDX NSX BAYAUC IAA + Osaka

2 个答案:

答案 0 :(得分:1)

我不明白你要做什么,但是你使用了loc功能错误的方法。

正确的方法是explode()

  

第三个参数是array explode ( string $delimiter , string $string [, int $limit = PHP_INT_MAX ] )limit,表示如果设置了限制且为正数,   返回的数组将包含最多的限制元素   最后一个元素包含其余的字符串。

     

如果limit参数为负,则除最后一个之外的所有组件   -limit返回。

     

如果limit参数为零,则将其视为1。

http://php.net/manual/en/function.explode.php

答案 1 :(得分:1)

你可以使用这个php方法进行url查询strign解析:parse_str($string, $output_array);

PHP

$str = 'make=ACURA&model%5B0%5D=MDX&model%5B1%5D=NSX&auction%5B0%5D=BAYAUC&auction%5B1%5D=IAA+Osaka';
parse_str($str, $output);

// var_dump($output);

请参阅输出:https://3v4l.org/LLvAV

Laravel Blade示例:

@foreach( $output as $opt )
    @if( is_array($opt) )
        {{ join(" ", $opt)." " }}
    @else
        {{ $opt." " }}
    @endif
@endforeach