-
正規表現を使用する方法:
function isBase64Encoded($string) { return preg_match('/^[a-zA-Z0-9\/\r\n+]*={0,2}$/', $string); } // 使用例: $string = 'SGVsbG8gd29ybGQ='; // Base64エンコードされた文字列 if (isBase64Encoded($string)) { echo "与えられた文字列はBase64エンコードされています。"; } else { echo "与えられた文字列はBase64エンコードされていません。"; }
-
base64_decode() 関数を使用する方法:
function isBase64Encoded($string) { $decoded = base64_decode($string, true); if (base64_encode($decoded) === $string) { return true; } else { return false; } } // 使用例: $string = 'SGVsbG8gd29ybGQ='; // Base64エンコードされた文字列 if (isBase64Encoded($string)) { echo "与えられた文字列はBase64エンコードされています。"; } else { echo "与えられた文字列はBase64エンコードされていません。"; }
-
文字列の長さとパディングをチェックする方法:
function isBase64Encoded($string) { $length = strlen($string); if ($length % 4 === 0 && preg_match('/^[a-zA-Z0-9\/\r\n+]*={0,2}$/', $string)) { return true; } else { return false; } } // 使用例: $string = 'SGVsbG8gd29ybGQ='; // Base64エンコードされた文字列 if (isBase64Encoded($string)) { echo "与えられた文字列はBase64エンコードされています。"; } else { echo "与えられた文字列はBase64エンコードされていません。"; }