본문 바로가기
잡다한 지식

[JS] PHP로 다시 serialize하기 위해 만든 함수

by 얼음꽃 2023. 10. 30.
728x90

express에서 unserialize후 필요한 값을 대입 후에 다시 serialize를 하는 경우

 

php와 똑같은 serialize 형식이 나타나지 않습니다.

 

그래서 사용하는 동안 해당하는 string, number, boolean 값 한에서 php가 사용할 수 있는 serialize 형식을

 

얻기 위해 만든 저의 함수 입니다.

function serializeToPHP(value) {
  let session = '';
  
  Object.keys(value).map((key) => {
    if (typeof value[key] === 'string') {
      // eslint-disable-next-line no-useless-escape
      session += `${key}|s:${value[key].length}:\"${value[key]}\";`;
    } else if (typeof value[key] === 'number') {
      session += `${key}|i:${value[key]};`;
    } else if (typeof value[key] === 'boolean') {
      if (value[key] === true) {
        session += `${key}|b:1;`;
      } else {
        session += `${key}|b:0;`;
      }
    }
  });
  return session;
}

 

728x90