Skip to content

Commit d535003

Browse files
author
Seta
committed
use file be cache
1 parent 2eeab45 commit d535003

File tree

1 file changed

+23
-17
lines changed

1 file changed

+23
-17
lines changed

src/Seta0909/LaravelTwStreetname/LaravelTwStreetname.php

+23-17
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
*/
88

99
namespace Seta0909\LaravelTwStreetname;
10+
1011
class LaravelTwStreetname
1112
{
1213
private static $instance;
@@ -15,29 +16,35 @@ class LaravelTwStreetname
1516
private static $countrys;
1617
private static $streets;
1718
private static $zipCode;
18-
private static $cache;
1919

2020
private static function getInstance()
2121
{
2222
if (!isset(self::$instance)) {
2323
$class = __CLASS__;
2424
self::$instance = new $class();
2525
//先載載入快取
26+
if (file_exists(dirname(__FILE__) . "/Origin.json")) {
27+
self::$originData = json_decode(file_get_contents(dirname(__FILE__) . "/Origin.json"), true);
28+
}
29+
if (file_exists(dirname(__FILE__) . "/Citys.json")) {
30+
self::$citys = json_decode(file_get_contents(dirname(__FILE__) . "/Citys.json"), true);
31+
}
32+
if (file_exists(dirname(__FILE__) . "/Countrys.json")) {
33+
self::$countrys = json_decode(file_get_contents(dirname(__FILE__) . "/Countrys.json"), true);
34+
}
35+
if (file_exists(dirname(__FILE__) . "/Streets.json")) {
36+
self::$streets = json_decode(file_get_contents(dirname(__FILE__) . "/Streets.json"), true);
37+
}
38+
if (file_exists(dirname(__FILE__) . "/ZipCode.json")) {
39+
self::$zipCode = json_decode(file_get_contents(dirname(__FILE__) . "/ZipCode.json"), true);
40+
}
41+
2642

27-
session_start();
28-
self::$cache = 'session';
29-
self::$originData = (isset($_SESSION['LaravelTwStreetnameOrigin'])) ? $_SESSION['LaravelTwStreetnameOrigin']:'';
30-
self::$citys = (isset($_SESSION['LaravelTwStreetnameCitys'])) ? $_SESSION['LaravelTwStreetnameCitys']:'';
31-
self::$countrys = (isset($_SESSION['LaravelTwStreetnameCountrys'])) ? $_SESSION['LaravelTwStreetnameCountrys']:'';
32-
self::$streets = (isset($_SESSION['LaravelTwStreetnameStreets'])) ? $_SESSION['LaravelTwStreetnameStreets']:'';
33-
self::$zipCode = (isset($_SESSION['LaravelTwStreetnameZipCode'])) ? $_SESSION['LaravelTwStreetnameZipCode']:'';
34-
35-
3643
//載入街道Json資料
3744
if (!is_array(self::$originData)) {
3845
$streetString = file_get_contents(dirname(__FILE__) . "/address_data.json");
3946
self::$originData = json_decode($streetString, true);
40-
$_SESSION['LaravelTwStreetnameOrigin'] = self::$originData;
47+
file_put_contents(dirname(__FILE__) . "/Origin.json", json_encode(self::$originData));
4148
}
4249
//載入郵遞區號Json資料
4350
if (!is_array(self::$zipCode)) {
@@ -48,7 +55,7 @@ private static function getInstance()
4855
$temp[$val['country']] = $val['mailcode'];
4956
}
5057
self::$zipCode = $temp;
51-
$_SESSION['LaravelTwStreetnameZipCode'] = self::$zipCode;
58+
file_put_contents(dirname(__FILE__) . "/ZipCode.json", json_encode(self::$zipCode));
5259
}
5360

5461
//初始化資料
@@ -59,26 +66,25 @@ private static function getInstance()
5966
self::$citys[] = $val;
6067
}
6168
}
62-
$_SESSION['LaravelTwStreetnameCitys'] = self::$citys;
69+
file_put_contents(dirname(__FILE__) . "/Citys.json", json_encode(self::$citys));
6370
}
6471
//載入鄉鎮區
6572
if (!is_array(self::$countrys)) {
6673
foreach (self::$citys as $key => $val) {
6774
self::$countrys[$val['uid']] = self::searchLink($val['uid']);
6875
}
69-
$_SESSION['LaravelTwStreetnameCountrys'] = self::$countrys;
76+
file_put_contents(dirname(__FILE__) . "/Countrys.json", json_encode(self::$countrys));
7077
}
7178
//載入街道
7279
if (!is_array(self::$streets)) {
7380
foreach (self::$countrys as $key => $country) {
7481
foreach ($country as $val) {
75-
if(isset($val['uid']))
76-
{
82+
if (isset($val['uid'])) {
7783
self::$streets[$val['uid']] = self::searchLink($val['uid']);
7884
}
7985
}
8086
}
81-
$_SESSION['LaravelTwStreetnameStreets'] = self::$streets;
87+
file_put_contents(dirname(__FILE__) . "/Streets.json", json_encode(self::$streets));
8288
}
8389
}
8490
}

0 commit comments

Comments
 (0)