亚洲一级免费看,特黄特色大片免费观看播放器,777毛片,久久久久国产一区二区三区四区,欧美三级一区二区,国产精品一区二区久久久久,人人澡人人草

PHP

PHP中session和cookie無(wú)效的解決方法

時(shí)間:2024-04-30 20:15:57 PHP 我要投稿
  • 相關(guān)推薦

PHP中session和cookie無(wú)效的解決方法

  問(wèn)題描述:

  在本地調(diào)試時(shí)session和cookie是用沒(méi)有問(wèn)題的,我是用session保存當(dāng)前登錄賬戶的信息,上傳服務(wù)器之后,發(fā)現(xiàn)跳轉(zhuǎn)之后session不復(fù)存在,為什么呢?在當(dāng)前頁(yè)面輸出session是存在的.

  遇到這個(gè)問(wèn)題三天了,因?yàn)槭亲詫W(xué)沒(méi)有老師可以請(qǐng)教,身邊也沒(méi)有幾個(gè)是弄PHP的,所以真的是很悲劇,于是乎百度,而百度上很多人都是屁話連天,沒(méi)有什么可以解決問(wèn)題的,經(jīng)過(guò)三天的修改終于找到了根源,原來(lái)是因?yàn)榻^大多數(shù)支持thinkphp的服務(wù)器是linux系統(tǒng),而我們的編程基本都還是windows,這樣就會(huì)出現(xiàn)bom頭這個(gè)問(wèn)題,而PHP對(duì)于bom頭不能解析,而直接拿下來(lái)了,導(dǎo)致session和cookie不能用.

  解決方法:

  什么是bom頭?在utf-8編碼文件中BOM在文件頭部,占用三個(gè)字節(jié),用來(lái)標(biāo)示該文件屬于utf-8編碼,現(xiàn)在已經(jīng)有很多軟件識(shí)別bom頭,但是還有些不能識(shí)別bom頭,比如PHP就不能識(shí)別bom頭,這也是用記事本編輯utf-8編碼后執(zhí)行就會(huì)出錯(cuò)的原因了.

  去掉bom頭的辦法,簡(jiǎn)單的是下面兩種:

  1、editplus去BOM頭的方法

  編輯器調(diào)整為UTF8編碼格式后,保存的文件前面會(huì)多出一串隱藏的字符(也即是BOM),用于編輯器識(shí)別這個(gè)文件是否是以UTF8編碼.

  運(yùn)行Editplus,點(diǎn)擊工具,選擇首選項(xiàng),選中文件,UTF-8標(biāo)識(shí)選擇 總是刪除簽名,然后對(duì)PHP文件編輯和保存后的PHP文件就是不帶BOM的了.

  2、ultraedit去除bom頭辦法

  打開(kāi)文件后,另存為選項(xiàng)的編碼格式里選擇(utf-8 無(wú)bom頭),確定就ok了,怎么樣,去掉bom頭很簡(jiǎn)單吧.

  再來(lái)一段議論utf8的BOM信息的,BOM是指php文件本身的存儲(chǔ)方式為帶BOM的UTF-8,普通頁(yè)面的中文亂碼方式一般不是由這個(gè)原因?qū)е碌?

  復(fù)制代碼 代碼如下:header("Content-type: text/html; charset=utf-8");

  這句話控制html輸出頁(yè)面的編碼方式,BOM只有在WINDOWS下采用“記事本”存儲(chǔ)為UTF-8時(shí)才會(huì)有,這個(gè)可以用WINHEX把開(kāi)始的2個(gè)字節(jié)刪掉.

  在dreamweaver里面編碼設(shè)置里面可以設(shè)置是否帶BOM,一般只要php輸出的不是圖片(GDI Stream),BOM都不會(huì)導(dǎo)致問(wèn)題,GDI Stream如果開(kāi)頭有了額外的 字符就會(huì)顯示為 紅叉.

【PHP中session和cookie無(wú)效的解決方法】相關(guān)文章:

在PHP7中不要做的10件事09-06

php實(shí)習(xí)心得12-01

php實(shí)習(xí)報(bào)告11-07

php工作總結(jié)11-11

php是什么格式?01-14

PHP Socket編程過(guò)程02-09

php開(kāi)發(fā)主管的職責(zé)05-15

我國(guó)企業(yè)管理溝通中存在的問(wèn)題及解決方法03-03

php開(kāi)發(fā)主管的工作職責(zé)09-29

php實(shí)習(xí)報(bào)告(5篇)11-08