thinkphp6動態修改 env配置

2021-10-01 17:10:44 字數 2134 閱讀 5106

直接貼方法吧:

首先例如修改下圖配置

已知值$val=array(1,2,3);
需要修改上圖的值limitonegoods為$val

$val=json_encode($val,json_unescaped_unicode);

env::offsetset('usergoods.limitonegoods',$val);

$envpath = root_path() . directory_separator . '.env';

// $envinidata=ksort(env::get());

$envinidata=env::get();

$envinidata=$this->arr_to_iniarr($envinidata);

$inicontent=$this->arr_trinsform_ini($envinidata);

$fp = fopen($envpath, "w") or die("couldn't open $envpath");

fputs($fp,$inicontent);

fclose($fp);

下面寫入方法

/**

* author:leishaofa

* date:20191225

* effect:ini陣列分割處理

*/function arr_to_iniarr(array $a, array $parent = array())

}return $out;

}

/**

* author:leishaofa

* date:20191225

* effect:ini資料組裝

*/function arr_trinsform_ini(array $a, array $parent = array())

else else}}

return $out;

}

優化後

$val=json_encode($val,json_unescaped_unicode);

env::offsetset('usergoods.limitonegoods',$val);

$envpath = root_path() . directory_separator . '.env';

// $envinidata=ksort(env::get());

$envinidata=env::get();

$inicontent=self::arr_trinsform_ini($envinidata);

print_r(env::get());

print_r($inicontent);

$fp = fopen($envpath, "w") or die("couldn't open $envpath");

fputs($fp,$inicontent);

fclose($fp);

/** * author:leishaofa

* date:20191225

* effect:ini資料組裝

*/function arr_trinsform_ini(array $a, array $parent = array())

else elseif (count($key)>1 && in_array($key[0],$keysindent))else}}

return $out;

}

同時建議在裡面加乙個版本,修改通過獲取版本號來判斷檔案是否存在,這個**我就不貼出來了

至於上面$envinidata=ksort(env::get());用不用那我覺得看裡面配置,如果在頂上面加了沒分組的標識建議不要使用排序例如下圖

上面多個了timelimitpage = 1沒有分組就不能使用排序

重要函式:parse_ini_file

還有可能有些人喜歡配置存session裡面,看喜好,但是我還是贊同存配置裡面

ThinkPHP(6) 模板技術

判斷比較標籤 區間標籤 三元運算子 php 在如下圖所示目錄中建立html 然後在index控制器的index方法中,呼叫模板 那麼當你訪問 index index時就會顯示index.html。如果你不想要模板和方法同名,你可以在display方法中跟上模板名稱即可。如下圖 兩種方式賦值 clas...

thinkphp6陣列分頁

一 因為有複雜的資料統計,需要組陣列,這時候使用tp6的分頁會有問題,於是改為陣列分頁的方式,將以前tp3的分頁拿過來改了一下,話不多說上 引入tp3分頁源 為了和tp6的區別不會太明顯,修改了源 放入tp6 vendor topthink framework src think 下 修改詳情 1 ...

thinkphp6開發步驟記錄

1 安裝php study 有php需要的環境 2 配置環境變數 path下新增 d phpstudy pro extensions php php7.3.4nts 3 在www資料夾下 composer create project topthink think tp 6.0.dev 5 使用檢視...