[ 新規に投稿する ]

decodeuri関数で末尾の文字が消えるNo.11124
K'zawa さん 23/02/18 13:45 [ コメントを投稿する ]
  こんにちは、K'zawaです。

decodeuri関数を通すと、文字列の末尾1文字が消えてしまいました。

$s = "abc";
$s2 = decodeuri( $s );
message $s2, $s;
[ ]
RE:11124 decodeuri関数で末尾の文字が消えるNo.11125
秀丸担当 さん 23/02/20 09:04 [ コメントを投稿する ]
  ご指摘ありがとうございます。
その通りでした。
大変失礼しました。
次のバージョンで修正させていただきます。
encodeuriされた%記号を含む文字列の場合はよかったのですが、変換無くそのまま通る場合うまくいきませんでした。
他にも、encodeuriされた前提でない文字で不安定になる問題もありました。
どちらも修正致します。

現状で回避するとしたら、%記号で変換される形になっているかどうかを事前に確認するしかないですが、JavaScriptが使えるので、こちらで回避したほうが簡単です。
例えば以下のようにします。
$s="abc";
js{
 setVar("$s2",decodeURI(getVar("$s")));
}
message $s2;
[ ]
RE:11125 decodeuri関数で末尾の文字が消えるNo.11126
K'zawa さん 23/02/20 11:51 [ コメントを投稿する ]
  秀丸担当さん、こんにちは。
K'zawaです。

>次のバージョンで修正させていただきます。

よろしくお願いします。JSのサンプルも参考になります。ありがとうございました。
[ ]

[ 新規に投稿する ]