我需要协助,首先也许这有重复,但我想我已经搜索,没有找到任何我期望和想要的东西.
我对我的问题感到困惑.我想要的是将数字格式转换为字符串格式,
我有字符串叫
$pricecode = 'ABCDEFGHIJ';
Run Code Online (Sandbox Code Playgroud)
就像是 :
ABCDEFGHIJ编号为1234567890
数字从0到9,例如:
$price = 1500;
Run Code Online (Sandbox Code Playgroud)
所以我需要更换价格并成为:
AEJJ
Run Code Online (Sandbox Code Playgroud)
我试图创建如下代码:
$priceCode = 'ABCDEFGHIJ';
$price = 1500;
$lenPrice = strlen($price);
$priceconveert = '';
$i=1;
$x=0;
while($i<=$lenPrice){
$number = substr($Price,$x,1);
if($number == 1){
$priceconveert .= substr($priceCode,$x,1);
}else if($number == 2){
$priceconveert .= substr($priceCode,$x,1);
}else if($number == 3){
$priceconveert .= substr($priceCode,$x,1);
}else if($number == 4){
$priceconveert .= substr($priceCode,$x,1);
}else if($number == 5){
$priceconveert .= substr($priceCode,$x,1);
}else if($number == 6){
$priceconveert .= substr($priceCode,$x,1);
}else if($number == 7){
$priceconveert .= substr($priceCode,$x,1);
}else if($number == 8){
$priceconveert .= substr($priceCode,$x,1);
}else if($number == 9){
$priceconveert .= substr($priceCode,$x,1);
}else if($number == 0){
$priceconveert .= substr($priceCode,$x,1);
}
$i++;
$x++;
}
echo $priceconveert;
Run Code Online (Sandbox Code Playgroud)
像abode这样的代码应该有结果
AEJJ
Run Code Online (Sandbox Code Playgroud)
但我运气不好,结果乱糟糟的.没有像AEJJ和我想要的,如果可以这样做,AEJ2因为后面1500 有2个零号(00)和价格代码00是JJ但是make是短的J2或者如果有价格15000将是J3因为有3个零(000).
我认为如果使用数组会很棒,但我不知道怎么做,因为关于单独numeric 1500 into 4 array和priceCode into 10 array.我完全混淆了.
请帮帮我,教我如何解决这个问题.谢谢.对不起我的语言.
谢谢
试试这个,
$letters = array('A', 'B','C','D','E','F','G','H','I','J');
$numbers = array('1', '2','3','4','5','6','7','8','9','0');
$text = '1500';
$output = str_replace($numbers,$letters, $text);
echo $output;
Run Code Online (Sandbox Code Playgroud)
产量
AEJJ
Run Code Online (Sandbox Code Playgroud)
要取回这个号码
$letters = array('A', 'B','C','D','E','F','G','H','I','J');
$numbers = array('1', '2','3','4','5','6','7','8','9','0');
$text = 'AEJJ';
$output = str_replace($letters,$numbers, $text);
echo $output;
Run Code Online (Sandbox Code Playgroud)
产量
1500
Run Code Online (Sandbox Code Playgroud)