如何将数组放入字符串中,然后使用laravel 5索引字符串

时间:2015-03-31 16:58:32

标签: php database split type-conversion laravel-5

好的,所以我正在努力解决这个问题,我试图在我的数据库中的列中拆分/索引值。所以我把我一直试图把它放到一个字符串中,并且所有的组合我试过应该工作,但每次我尝试分割值时我会不断收到此错误Array to string conversion并且错误会将我的数据库显示为字符串,甚至是至少一列。现在抱歉,如果我的代码在这一点看起来比应该是哈哈更多的工作。那是出于绝望和试图让它发挥作用。

这是我的控制器:

public function FSC_List($id)
{

    $fsg_find_id = fsgdata::find($id);
    $fsc_list_all = fscdata::all();
    $fsc_find_id = fscdata::find($id);
    $num_match = fscdata::all()->toArray();
    $fsc_num_col = fscdata::lists('fsc_number');
    $newstring = implode("",$fsc_num_col);
    $final = $newstring.str_split(0,2); 

return View('FSC_views.FSC_List', compact('fsg_find_id','fsc_list_all',
        'fsc_find_id', 'num_match', 'fsc_num_col', 'newstring','final'));
}

这是我的观点:

@extends('layout.master')
@section('content')
<div class="figure"><img src="/Content/images/figure2.jpg" /></div>
<div class="main">
    <h2>Search Results for FSG Number: {{ $fsg_find_id->fsg_number }}</h2>
        <ul>

        @foreach($fsc_num_col as $fsc_find_id->fsg_number)
            @if($fsg_find_id->fsg_number == $final);
                <a href='/NSN_list={{ $fsc_find_id->id }}'>{{$fsc_find_id->fsc_number}}</a></br>
            @endif
        @endforeach
    </ul>
</div>
@endsection

请注意,我的目标是让用户选择2个数字,以匹配数据库中一堆4位数字的前2位数,并获取满足该条件的所有数字。提前感谢任何可以提供帮助的人。

2 个答案:

答案 0 :(得分:1)

直接问题如下:

$final = $newstring.str_split(0,2);

基本上,您正在尝试将字符串$newstring与数组str_split(0, 2)合并,这就是您收到Array to string conversion错误的原因。看一下str_split的手册条目 - 看起来你看起来不正确。

如果您尝试获取字符串的前两个字符,那么您应该使用substr。类似的东西:

$full_string = 'abcdefg';
$first_two = substr($full_string, 0, 2);  # $first_two = 'ab'

答案 1 :(得分:0)

这可能不是最好的做法,但这就是我如何去做,如果有人知道如何一次索引多个角色,一定要分享哈哈。

@foreach($fsc_list_all as $fsc_find_id)
    @if($fsg_find_id->fsg_number[0] == $fsc_find_id->fsc_number{0} &&
      $fsg_find_id->fsg_number[1] == $fsc_find_id->fsc_number{1})

          <a href='/NSN_list={{ $fsc_find_id->id }}'>{{$fsc_find_id->fsc_number}}</a></br>

     @endif
@endforeach