標籤:discuz style class code color int
===================問題情況描述===================
小弟一直在玩discuz論壇開來源程式,這個論壇程式經常涉及到論壇搬家的問題。
今天我在本地Wamp環境下,用開源軟體帝國備份王2010進行Database Backup資料,結果開啟發現報錯500!
這真是坑爹了,回想下以前自己使用這個開來源程式進行備份也不下於十幾次了,大部分都正常成功,
但也不乏出現這種情況的,小弟之前一般遇到這種問題,
都是直接忽略,換其他辦法來進行備份,但是用慣了帝國備份王,換其他的方法備份資料,總感覺難受,可能是習慣了一鍵備份吧!
這次,小弟抱著程式員鑽牛角尖的態度,想自己解決下這個問題。
首先,小弟在這個開來源程式的入口檔案index.php開頭的地方加入了個中斷來判斷這個程式網域名稱是否正常能訪問
?
| 1 |
<?php<br>echo 213;die;<br>require(‘class/connect.php‘);<br>require(‘class/functions.php‘);<br>require LoadAdminTemp(‘eindex.php‘);<br>?> |
結果發現瀏覽器正常輸出了中斷,這樣的話就是網域名稱已經能正常找到入口檔案了。
接下來,小弟又想是不是包含的檔案找不到呢?
之前小弟因為搞不清require和include的區別曾經吃過一個大虧,其實差別大家都知道。
require包含檔案的時候,如果找不到檔案,直接就拋出錯誤,中斷程式運行;
include包含檔案的時候,如果找不到檔案,notice提醒,不會中斷程式運行;
因此我就在第三行加了個中斷,發現是在require(‘class/functions.php‘);包含檔案的地方出錯,
我把換成include包含,notice提醒,那就是說這個檔案包含存在問題,
後面,小弟研究很久,沒發現問題所在,最後沒辦法求救於萬能的度娘!
度娘告訴我們,可能是因為php.ini裡面short_open_tag沒有開啟;
於是,小弟就在php.ini裡面講short_open_tag設定為On,開啟了。。結果、、問題解決了~!
好吧,小弟就是個菜鳥,還是廣大網民厲害!
小弟抱著被蛇咬過一次,下次見面定要斬他七寸的態度,搜了下這個原理!
原來,在我們php.ini有對php標誌簡寫的識別!
啥時php標誌簡寫呢?
就是咱們一般php檔案都是<?php ?>包含的,我們有時候省略其中的php
改成<? ?>來包含,這個short_open_tag開啟就是支援這樣的簡寫,如果沒開啟,那就跟lz一樣了@[email protected]!
=================小弟感想=====================
作為php工作一年的小菜鳥,遠不及各位看官大神技術牛叉,等級也差太多,可能就被您一刀就秒了!
但是小弟經此一役,談下自己對php態度方面的感受!
1.首先,php菜鳥遇到問題,需要去自己解決,實在解決不了在求助於他人!
為啥這麼說呢?還記得小弟以前的數學老師告訴我們,遇到不會的題目,想自己獨立思考,用自己的角度,
自己的方法去尋找解題方法,實在解決不了,再和同學與老師求助!
小弟對此的理解就是:當我們在面對問題的時候,先獨立自己去解決有幾大好處!一是培養自己不怕難題的習慣,
二是學會如何去解決方案,三是當自己成功解決的時候,能因成就感增強自己的自信心和對此方面的興趣~當然還有
就是自己獨立解決可以記憶更深刻了!~
2.其次,php菜鳥解決問題時,遇到不懂的方面,最好能自己去查閱相關資訊,弄懂此知識點,也許這很花時間,也許這
很零碎,但是咱編程想成為大牛,就是得慢慢積累經驗,瞭解相關知識,所以片段再小,咱也不能放過不是~
3.最後,就是咱如果通過他人協助解決了問題,一定要知其然知其所以然,搞清原理,以後在遇到,就算轉換了下,自己
也能搞定!
這是小弟作為小菜鳥經此一役的小小感受,寫出來受各位大牛批評指正,說的不對和不恰當的地方,望指正!