新聞中心
thinkcmf后臺驗證碼有時不顯示的解決辦法
作者 / 無憂主機 時間 2017-07-21 19:56:05
thinkcmf因為有很好的可擴展性,深受站長朋友們喜愛,無憂主機小編也是因為看見thinkcmf官網有很多簡單易懂的教程而被深深吸引到了,更重要的thinkcmf是基于thinkphp開發(fā)的,可以借助這個系統(tǒng)更加全面地去了解thinkphp。最近無憂主機小編一直在糾結thinkcmf網站后臺驗證碼不顯示的問題,關于這個問題在網上的回答是眾說紛紜。經過一番苦苦摸索終于有了答案,為了讓thinkcmf源碼愛好者不再走我走過的彎路,無憂主機小編就把thinkcmf后臺驗證碼有時不顯示的解決辦法分享給大家。 用ftp工具連接到虛擬主機,在根目錄的 application/Api/Controller/ 路徑下找到 CheckcodeController.class.php文件,如圖1所示, 將這個文件下載到本地進行修改。 用文本編輯器打開,在 public function index() ?這個方法中,找到
$Verify = new \Think\Verify($config);在這句代碼前面上 ob_clean(); ?如圖2所示。 改好后保存并上傳到空間的原路徑,再去訪問發(fā)現(xiàn)驗證碼始終都會顯示了。 這個函數(shù)到底是起到了什么作用呢,在php官網文檔的介紹的是,這個函數(shù)用于丟棄緩沖區(qū)的內容,而且緩沖區(qū)中帶了PHP_OUTPUT_HANDLER_CLEANABLE標志的ob_start()方法才能工作, ob_start()表示打開輸出控制緩沖。在thinkcmf程序中,網站有許多生成的圖片類文件比如銷毀后的驗證碼,想要正確訪問新生成的驗證碼,如果沒有及時清除緩沖區(qū),驗證碼就可能無法顯示,這個函數(shù)就是用來清理緩沖區(qū)的。
本文地址:http://www.love62.cn/thinkphp/25138.html