PHPでシリアライズしたデータが壊れる(汗
関連記事
- 【#apache #PHP】apacheが立ち上がらなくなったー「アクセス許可で禁じられた方法でソケットにアクセスしようとしました」エラー発生 【2024年04月16日(火)】
- 【#Laravel #PHP】久しぶりにLaravelと格闘しておるがすっかり忘れちょる(汗 【2024年04月12日(金)】
- 【PHP】PHPのバージョンをアップしたら,「tcpdf」フレームワークがエラー吐きまくりで,こっちまで吐きそうになった 【2024年01月10日(水)】
- 【#PostgreSQL #laravel】サーバのお引っ越し作業 オワタ 【2022年09月27日(火)】
- 【#laravel】ログイン系の処理が仕上がった!あとはひたすら画面作りモルモルモル 【2021年07月23日(金)】
いや,今日は,不具合大祭の日か,と(爆
お客さんのとこのパソコンはぶっ壊れるわ(昼から,緊急出撃.復旧に3時間,BIOS初期化って,荒業を使って復旧(汗)
とあるゲームシステムは,構造的な欠陥が露見するわ(滝汗
そのゲームシステム
ゲームデータをフォルダごとに持たせておったんじゃけど(この仕様は,歴史的経緯がありましてなぁ...笑)
ゲーム人口が急増で,フォルダ数も激増...
今日になって,突然書き込めなくなって
調べたら,Linuxって,1つのフォルダの配下には,32767個のフォルダしか置けないらしい(スーパー汗
知らなかったぞな...
ってことで,ゲームデータを急遽テーブルに格納するロジックへ変更
ファイルに出力していた内容を,シリアライズ化して,テーブルのフィールドに吐き出し
必要箇所ではアンシリアライズ化で,内容をシステム内に復元...
って作戦だったけど...アンシリアライズ化してくれず,エラー吐いて落ちる件(大汗
データに全角が混ざってるしなぁ...
さぁ~どうすべか??と,悩み調べてみたら...
いいネタ発見!
BASE64でエンコードかけりゃいいらしい!!♥
元ネタはこちら
PHP でシリアライズしたデータが壊れてしまう場合は base64_encode をする@WEBLE
ソース的にはこんな感じ
//シリアライズ化 $ary = array(); $ary[0] = '愛'; $ary[1] = '飢え'; $ary[2] = '男'; $st = base64_encode(serialize($ary)); //$stをテーブルにカキコ //----------------------------------------- //アンシリアライズ化 //$stはテーブルから読み込み済み $st = base64_decode($st); $resultAry = unserialize($st);テストしてるけど,なんとなくいい感じ?
この実装で様子を見ますわん♥
コメント
九州自動車道 トンネル内で大型トレーラーから出火 人吉~八代間で通行止め(24/7/26)
【#ご到着シリーズ】冷凍かしわ飯&冷凍かしわうどんセットに当選したモルモルモル
【#破局噴火】イエローストーンで大規模な水蒸気爆発が発生
暑すぎてダレてる.なんのやる気も起こらんドロドロドロ
【#Windows #CrowdStrike】セキュリティーソフト世界シェア1位があだ…ウィンドウズ障害、「過去最大規模」の見方も
3連休,らしい.これといって予定はない(爆
【#trump #shooting】トランプ暗殺未遂:トランプ氏 集会で発砲音「前大統領は無事」死者も
【#線状降水帯】九州北部山口県に線状降水帯発生予測情報発令(24/7/13)
【#落雷】今朝の雷,すごかったー 清武城かお隣のマンションに落雷したー共用部の電源落ちてるテレビが映らない!
【#彗星】紫金山アトラス彗星(C/2023 A3)がぶっ壊れた!今秋,見れると思ってたのにピエン