我有一个学生编号,格式为'2/18 /#ABC',当我尝试输入数据库时,它给我一个错误。我该如何处理这个问题 我们尝试使用相同的学号('2/18 / 11ABC')创建一个独特的条形码图像,其中一些类被解释为 无法打开'//main//sub-images//2/18/11ABC.jpg'并给我们一个错误,它无法找到图像路径。我们知道我们无法处理这个正斜杠。我们如何处理这种情况的前向和反斜杠。我们需要使用正则表达式还是任何?
答案 0 :(得分:1)
$stud_number = '2/18/11ABC';
$fname = str_replace('/', '_', $stud_number) . '.jpg';
echo $fname;
输出(安全文件名):
<强> 2_18_11ABC,JPG 强>
您无法使用这些字符<
,>
,:
,"
,/
,\
,{{1}文件名中的{},|
,?
。
此外,像 2/18 /#ABC 这样的学生号码无法使用数字类型的字段存储在数据库中!在数字字段中,您可以以正确的数字格式(取决于您使用的数字类型)和正确的范围(也取决于您使用的数字类型)存储仅数字。
答案 1 :(得分:0)
你需要用#替换#?
如果是这样,你可以通过简单地使用
来做到这一点 str_replace('#','11',$mystring);
只要你没有任何其他#符号