小白使用PHP出現的一些坑

2021-09-19 03:19:07 字數 2360 閱讀 9905

最近由於公司的用php開發乙個新專案,之前是一直沒接觸過這部分,

php的安裝部署,暫時先不進行記錄,網上有好多教程可以搜

使用版本:

apach 2.4

php-5.6.40-win32-vc11-x64

mysql 5.7

先說下,在此之前網上搜了好多種的解決辦法基本上都是需要配置php.ini,將原配置中注釋的相關(extension=php_curl.dll;extension=php_openssl.dll)拓展放開即可。但是測試之後發現還是沒有解決問題,

最後發現apach\bin目錄中缺少ssleay32.dll、libeay32.dll、libssh2.dll,從php的根目錄中複製到apach\bin目錄下,重啟服務。 完美解決

使用php給layui.table 動態載入table:

第一版(錯誤)

錯誤描述:返回的資料不符合規範,正確的成功狀態碼 (code) 應為:0

頁面接收資料:

[["code",0],["msg","success"],["count",2],["code",[,]]]

php後台**:

$data = array();

$data[0] = array('code',0);

$data[1] = array('msg','success');

$data[2] = array('count',sizeof($result));

$data[3] = array('data',json_encode($result));

echo json_encode($data);

修改第二版(錯誤):

頁面接收資料:

,,,]"}
報錯內容:

修改第三版(正確):

頁面接收資料:

,]}
php**:

$data = array('code' => '0', 'msg' => 'success', 'count' => sizeof($result), 'data' => $result);

echo json_encode($data);

第一版 -->第二版 問題

發現返回資料不符合layui 資料格式規範,正確格式:,{}]}

這個問題是由於在服務端新建立的array是錯誤的。

在php中有三種陣列型別,

在layui.table中需要的是類似map(key-value)的json資料型別。

第二版 -->第三版 問題

仔細看上面第二版頁面接收到的資料,注意其中data的value:

這裡是以字串型別接收到的,而在頁面中需要是乙個array陣列,因此layui報錯。

這個問題查了好多,都沒有和我這個比較類似的。

因為我們資料庫多條資料就是乙個array物件,如下:[,]

所以在傳入陣列時使用json_encode反而將物件轉換為了string,因此去掉這個方法,直接將物件傳入即可。

vue axios使用 一些坑

1,這個是為了在傳送post請求的時候將引數序列化 import axios from axios import qs from qs 用於post請求引數序列化 post傳參序列化 新增請求 2,可以全域性設定修改header 3,可以傳送請求時,修改頭部 var data axios.post ...

iview使用的一些坑

由於公司的設計偏愛iview的這種設計風格,所以在vue的道路上與iview形影不離 autocomplete 最開始發現有問題是偶然的從這個元件開始的,但其實是乙個select相關操作的問題,不過跟使用的機器有關。可能不同的機器對鍵盤的碼的識別不一樣,導致在某些電腦上無法使用回車 上下箭頭 tab...

使用layui框架的一些坑

本markdown編輯器使用stackedit修改而來,用它寫部落格,將會帶來全新的體驗哦 markdown 是一種輕量級標記語言,它允許人們使用易讀易寫的純文字格式編寫文件,然後轉換成格式豐富的html頁面。維基百科 使用簡單的符號標識不同的標題,將某些文字標記為粗體或者斜體,建立乙個鏈結等,詳細...