我有一个问题。为了使事情更清楚,我将举一个例子:
值以表格形式提交。我有:
Value1: Blanc
Value2: Titanium
Value3: 100
Value4: 150
Value5: China
我想得到一个具有这种结构的值6:
BLTIT-100150-CH
Value6具有:(来自value1的2个字符)+(来自value5的3个字符)+( - )+(value3 + value4 +( - )+(value5的2个字符)。 有没有办法用PHP或JavaScript制作它?
答案 0 :(得分:0)
PHP中的substr()和连接(。)运算符的组合将解析出来。
例如,substr($_POST['Value 1'],0,2);
将获得值1的前两个字符,前提是它位于该POST数组中。
然后在字符串上使用concat运算符:
$val6 = $str1.$str2."-".$str3.$str4."-".$str5;
在PHP中很容易。
答案 1 :(得分:0)
在PHP中:
$Value6 = strtoupper(substr($Value1,0,2) . substr($Value2,0,3) . '-' .
$Value3 . $Value4 . '-' . substr($Value5,0,2)
);
当然,这假设您的变量是在本地设置的。如果你直接从POST中获取它们,则需要$_POST['Value1']
而不是$Value1
等。
查找substr
- 它给出一个字符串的子部分(称为子字符串),给定起点和长度:
http://php.net/manual/en/function.substr.php
.
是PHP字符串连接运算符 - 它将两个字符串连接在一起。
strtoupper
将字符串转换为大写(请参阅http://php.net/manual/en/function.strtoupper.php)
答案 2 :(得分:0)
使用PHP,当您收到信息时,您可以执行以下操作:
$newValue = $_POST[Value1][0].$_POST[Value1][1];
$newValue .= $_POST[Value2][0].$_POST[Value2][1].$_POST[Value2][2]."-";
$newValue .= $_POST[Value3];
$newValue .= $_POST[Value4]."-";
$newValue .= $_POST[Value5][0].$_POST[Value5][1];
答案 3 :(得分:0)
这将在PHP中为您提供您想要的内容:
$value6 = strtoupper(substr($value1, 0, 2)) . strtoupper(substr($value2, 0, 3)) .
"-{$value3}{$value4}-". strtoupper(substr($value5, 0, 2));
<小时/> 编辑:
由于结果字符串($value6
)中的所有字符都是大写的,因此可以通过这样做缩短它:
$value6 = strtoupper(substr($value1, 0, 2) . substr($value2, 0, 3) .
"-{$value3}{$value4}-". substr($value5, 0, 2));