亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在laravel中循環一個數據

如何在laravel中循環一個數據

PHP
慕工程0101907 2021-11-05 14:38:16
我有按 id 產品打印條碼的頁面像這樣 :我希望頁面顯示 20 個條形碼,如下圖所示我只有 1 個條碼數據,但我想在頁面上顯示多達 20 個條碼……所以,當我打印一個條碼時,我可以打印多達 20 個條碼,而不僅僅是一個我的控制器:public function barcodes($id){    $title = $this->title;     $products = Product::find($id);    $vars = compact('products');    $data = ['products' => $products];    return view($title.'.barcodes',compact('data','products'));}刀片視圖:<div class="row">   <div class="col-12">      <div class="card-box">         <div class="header-title">             <a href="#" class="btn btn-info btn-sm" onclick="printDiv('printableArea')" >            <i class="fa fa-print"></i>            Print            </a>         </div>         <div class="panel-body" id="printableArea">            <div class="col-md-2" style="padding: 10px; border: 1px solid #adadad;display:inline-block;line-height:16px !important; " align="center">               <p>{{$products->name}}</p>               <?php echo '<img src="data:image/png;base64,' . DNS1D::getBarcodePNG($products->code, "c128A",1,40,array(1,1,1), true) . '"   />'; ?>               <br>               <small style="font-size: 8px !important;"><b>{{$products->code}}</b></small>               <p style="line-height: 12px !important; font-size: 8px !important;">                  <b>Price: {{$products->sale_price}} </b>               </p>            </div>         </div>      </div>   </div></div><script>   function printDiv(divName) {       var printContents = document.getElementById(divName).innerHTML;       var originalContents = document.body.innerHTML;       document.body.innerHTML = printContents;       window.print();       document.body.innerHTML = originalContents;   }</script>
查看完整描述

3 回答

?
狐的傳說

TA貢獻1804條經驗 獲得超3個贊

這將遍歷每個 $product


 @foreach ($products as $product)

              <div class="card-box">

             <div class="header-title"> 

                <a href="#" class="btn btn-info btn-sm" onclick="printDiv('printableArea')" >

                <i class="fa fa-print"></i>

                Print

                </a>

             </div>

             <div class="panel-body" id="printableArea">

                <div class="col-md-2" style="padding: 10px; border: 1px solid #adadad;display:inline-block;line-height:16px !important; " align="center">

                   <p>{{$products->name}}</p>

                   <?php echo '<img src="data:image/png;base64,' . DNS1D::getBarcodePNG($products->code, "c128A",1,40,array(1,1,1), true) . '"   />'; ?>

                   <br>

                   <small style="font-size: 8px !important;"><b>{{$products->code}}</b></small>

                   <p style="line-height: 12px !important; font-size: 8px !important;">

                      <b>Price: {{$products->sale_price}} </b>

                   </p>

                </div>

             </div>

          </div>

       </div>

    @endforeach

https://laravel.com/docs/5.8/blade#loops


查看完整回答
反對 回復 2021-11-05
?
慕桂英3389331

TA貢獻2036條經驗 獲得超8個贊

您可以使用的一種方法是foreach 循環。


在你的情況下,你可以做這樣的事情。


@foreach($products AS $product)

    <div class="row">

       <div class="col-12">

          <div class="card-box">

             <div class="header-title"> 

                <a href="#" class="btn btn-info btn-sm" onclick="printDiv('printableArea')" >

                <i class="fa fa-print"></i>

                Print

                </a>

             </div>

             <div class="panel-body" id="printableArea">

                <div class="col-md-2" style="padding: 10px; border: 1px solid #adadad;display:inline-block;line-height:16px !important; " align="center">

                   <p>{{$product->name}}</p>

                   <?php echo '<img src="data:image/png;base64,' . DNS1D::getBarcodePNG($product->code, "c128A",1,40,array(1,1,1), true) . '"   />'; ?>

                   <br>

                   <small style="font-size: 8px !important;"><b>{{$product->code}}</b></small>

                   <p style="line-height: 12px !important; font-size: 8px !important;">

                      <b>Price: {{$product->sale_price}} </b>

                   </p>

                </div>

             </div>

          </div>

       </div>

    </div>

@endforeach

Foreach構造提供了一種簡單的方法來迭代數組。


查看完整回答
反對 回復 2021-11-05
?
慕慕森

TA貢獻1856條經驗 獲得超17個贊

我只有 1 個條碼數據,但我想在頁面上顯示多達 20 個條碼……所以,當我打印一個條碼時,我可以打印多達 20 個條碼,而不僅僅是一個


使用@for


@for ($i = 0; $i < 20; $i++)

    // put HTML for barcode here

@endfor


查看完整回答
反對 回復 2021-11-05
  • 3 回答
  • 0 關注
  • 278 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號