• 23-12-2021, 16:58:31
    #1
    Merhaba,
    foreach ile ikon çektiriyor ve listeletiyorum ancak buna sınırlama getirmek istiyorum. Max 6 tanesini göstersin istiyorum, bunu aşağıdaki kodda nasıl yapabilirim? yardımcı olabilir misiniz?

    @php
    $terms_ids = $row->terms->pluck('term_id');
    $attributes = \Modules\Core\Models\Terms::getTermsById($terms_ids);
    @endphp
    @if(!empty($terms_ids) and !empty($attributes))
        @foreach($attributes as $attribute )
            @php $translate_attribute = $attribute['parent']->translateOrOrigin(app()->getLocale()) @endphp
            @if(empty($attribute['parent']['hide_in_single']))
                
    
                            @php $terms = $attribute['child'] @endphp
                            @foreach($terms as $term )
                                @php $translate_term = $term->translateOrOrigin(app()->getLocale()); @endphp
                                
                                <th>
                                <div class="listing_feature_iconbox mb30">
                                    <div class="icon float-left mr10">
                                        @if($term->icon)
                                            <text class="ipucu"><span class="ipucuMetniSag">{{$translate_term->name}}</span><span class="{{ $term->icon }}"></span></text>
                                        @else
                                            <span class="fa fa-check"></span>
                                        @endif
                                    </div>
                                </div>
                                </th>
                            @endforeach
     
            @endif
        @endforeach
    @endif

    Şimdiden teşekkür ederim.
  • 23-12-2021, 17:04:18
    #2
    for loopunu kullanabilirsiniz. Amacınız için daha basit duruyor.
  • 23-12-2021, 17:09:48
    #3
    Foreach dışında $i=0; tanımlayıp foreach içerisinde $i++ yapıp ve foreach in sonunda if($i==6) break; şartını koyarak çözebilirsiniz.
  • 23-12-2021, 17:10:35
    #4
    $terms_ids= $row->terms->pluck('term_id')->limit(6);
  • 23-12-2021, 17:10:51
    #5
    dev
    Kurumsal Üye
    AndMex adlı üyeden alıntı: mesajı görüntüle
    Merhaba,
    foreach ile ikon çektiriyor ve listeletiyorum ancak buna sınırlama getirmek istiyorum. Max 6 tanesini göstersin istiyorum, bunu aşağıdaki kodda nasıl yapabilirim? yardımcı olabilir misiniz?

    @php
    $terms_ids = $row->terms->pluck('term_id');
    $attributes = \Modules\Core\Models\Terms::getTermsById($terms_ids);
    @endphp
    @if(!empty($terms_ids) and !empty($attributes))
        @foreach($attributes as $attribute )
            @php $translate_attribute = $attribute['parent']->translateOrOrigin(app()->getLocale()) @endphp
            @if(empty($attribute['parent']['hide_in_single']))
                
    
                            @php $terms = $attribute['child'] @endphp
                            @foreach($terms as $term )
                                @php $translate_term = $term->translateOrOrigin(app()->getLocale()); @endphp
                                
                                <th>
                                <div class="listing_feature_iconbox mb30">
                                    <div class="icon float-left mr10">
                                        @if($term->icon)
                                            <text class="ipucu"><span class="ipucuMetniSag">{{$translate_term->name}}</span><span class="{{ $term->icon }}"></span></text>
                                        @else
                                            <span class="fa fa-check"></span>
                                        @endif
                                    </div>
                                </div>
                                </th>
                            @endforeach
     
            @endif
        @endforeach
    @endif
    Şimdiden teşekkür ederim.
    Collection kullaniyorsaniz take isinizi gorur.

    https://laravel.com/docs/8.x/collections#method-take
  • 23-12-2021, 17:27:25
    #6
    wisex adlı üyeden alıntı: mesajı görüntüle
    $terms_ids= $row->terms->pluck('term_id')->limit(6);
    Hocam, server error verdi.

    canyucel adlı üyeden alıntı: mesajı görüntüle
    for loopunu kullanabilirsiniz. Amacınız için daha basit duruyor.
    salihbey24 adlı üyeden alıntı: mesajı görüntüle
    Foreach dışında $i=0; tanımlayıp foreach içerisinde $i++ yapıp ve foreach in sonunda if($i==6) break; şartını koyarak çözebilirsiniz.
    Kod üzerinde yardımcı olabilir misiniz hocam?

    Noroc adlı üyeden alıntı: mesajı görüntüle
    Collection kullaniyorsaniz take isinizi gorur.
    https://laravel.com/docs/8.x/collections#method-take
    Ne kullandığım hakkında pek bir bilgim yok laravel üzerinde ilk kez çalışıyorum.



    Teşekkürler
  • 23-12-2021, 17:29:46
    #7
    foreach ile döndürmek istediğiniz veri hangi tablodan geliyorsa ona limit koymalısınız.

    Örnek:
    $users = DB::table('users')->limit(10)->get();
  • 23-12-2021, 17:32:18
    #8
    Üyeliği durduruldu
    @foreach($items->take(10) as $item)
    @endforeach
  • 23-12-2021, 17:36:25
    #9
    canseworks adlı üyeden alıntı: mesajı görüntüle
    @foreach($items->take(10) as $item)
    @endforeach
    wisex adlı üyeden alıntı: mesajı görüntüle
    foreach ile döndürmek istediğiniz veri hangi tablodan geliyorsa ona limit koymalısınız.

    Örnek:
    $users = DB::table('users')->limit(10)->get();
    Ya ben yanlış yapıyorum yada farklı bir format gerekiyor arkadaşlar. Rica etsem yukarıdaki attığım kod üzerinde yardımcı olduğunuz kodları yapıştırabilir misiniz doğru kısımlara, laravel konusunda cidden bir bilgim bulunmuyor çünkü.
    Teşekkür ederim