obstart的小用法

WBOY
發布: 2016-07-29 09:10:08
原創
1111 人瀏覽過

在處理opencart圖片加載的時候,想用lazylaod這個jquery插件,
網站前台都顯示好了,在後台加載的時候發現2了,後台編輯商品的圖片顯示沒出來。

因為我用的抓取把商品都自動填充,沒有經過後台手動添加。也就是說在處理lazyload顯示圖片的時候,其中的src data-data-original width height這些屬性是一股腦生成的,所以就導致後台顯示看不到,但是審查元素可以看到。

php添加是這樣添加的,大概複現一下:

<code>foreach (xx as x){
 $imgs.='<img src="image/catalog/lazyload_grey.gif" 
 data-original='.$tmp.'image/catalog/product/'.$id."/".$value.' 
 width="800" height='800'>';
}
</code>
登入後複製

當時想在後台的控制器裡正則替換不就好了,試了下,是可以。但是更新商品的時候又會被覆蓋掉。

想想還是透過前台處理比較好,用js或用ob函數。

雖然這兩種我都沒有處理,但是還是記錄下思路,等網站真需要優化,再具體操作。

以下是ob函數的一個小例子:

<code><?php
    ob_start();
    echo  '13712345678';
    echo 'another content<br>';
    $result=ob_get_contents();
    echo '<hr>';
    
    ob_clean();
  
    if(preg_match('/\d{11,}/', $result,$match)){
         echo str_replace(substr($match[0],-4),'****',$match[0]);
    }else{
        echo 'no match';
    }
    ob_end_flush();
    
    // result:1371234****
</code>
登入後複製

我沒有處理,覺得這兩種方法都不大好。希望各位能再提供下處理lazyload或類似圖片懶加載時,前後台無法一致呈現的問題的方法或想法。

參考網站:

ob函數處理lazyload

lazyload

以上就介紹了obstart的小用法,包括了方面的內容,希望對PHP教程有興趣的朋友有幫助。

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!