用php中的普通字符替换特殊字符

时间:2012-12-14 13:27:23

标签: php switch-statement

  

可能重复:
  how to replace special characters with the ones they’re based on in PHP?

以下是示例代码:

$code="CSC113α";//other codes PHY123β,MAT324δ

    ////return last character of the code
    $lastchar=substr($code, -1);

    // returns rest code without last character..
    $rest = substr($code, 0, -1);  

    //Make standard course_ID with a,ß..
    switch ($lastchar)
    {
    case 'α':{
      $lastchar='A';
      $id=$rest.$lastchar ;
      $full_course_id=$id;
      break;
    }
    case 'β':{
      $lastchar='B';
      $id=$rest.$lastchar ;
      $full_course_id=$id;
      break;
    }
    case 'δ':{
      $lastchar='D';
      $id=$rest.$lastchar ;
      $full_course_id=$id;
      break;
    }
    default:
      $full_course_id=$code;
    }

这里我尝试用A,B,D替换α,β,δ......这段代码不起作用。这里的变量代码值来自另一个带有特殊字符的脚本。这里我想用这些字符替换普通字符..我想最后输出像'CSC113A'..但这个开关代码对我不起作用...请帮我做这个... thxx在高级....

1 个答案:

答案 0 :(得分:1)

为什么不简单地使用函数str_replace?我做了一个测试,它对我有用!

<?php
$code="CSC113α";
$full_course_id = str_replace(array('α','β', 'δ'), array('A', 'B', 'D'), $code);