使用多个变量的组合创建变量

时间:2012-04-19 16:28:55

标签: php javascript html sql forms

我有一个问题。为了使事情更清楚,我将举一个例子:

值以表格形式提交。我有:

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制作它?

4 个答案:

答案 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));