PHP-将字符串行拆分为两个变量
我不知道该怎么做,但如果有人能给我指出正确的方向那就太好了,基本上我在一个变量中有一行单独的文本,如下所示:PHP-将字符串行拆分为两个变量,php,Php,我不知道该怎么做,但如果有人能给我指出正确的方向那就太好了,基本上我在一个变量中有一行单独的文本,如下所示: Lambo 1; Trabant 2; Car 3; Array ( "Lambo", "1", "Trabant", "2", "Car", "3" ) 然后我想将“Lambo”拆分为它自己的变量,然后将“1”拆分为它自己的变量,并对其他变量重复。我该怎么做呢? 我知道explode(),但不确定如何将变量拆分两次等 根据评论中的要求,我期望的输出如下: $Item=“Lambo
Lambo 1; Trabant 2; Car 3;
Array ( "Lambo", "1", "Trabant", "2", "Car", "3" )
然后我想将“Lambo”拆分为它自己的变量,然后将“1”拆分为它自己的变量,并对其他变量重复。我该怎么做呢?
我知道explode(),但不确定如何将变量拆分两次等
根据评论中的要求,我期望的输出如下:
$Item=“Lambo”
$Quantity=1
然后将它们回显并返回到循环的顶部,例如,对Trabant和Car执行相同的操作您可以使用preg_split并通过移动两次来迭代数组
$output = preg_split("/ (;|vs) /", $input);
您可以使用以下方法获取这些零件:
$line = "Lambo 1; Trabant 2; Car 3;";
preg_match_all("/[^ ;]+/", $line, $matches);
$matches = $matches[0];
使用该示例数据,$matches
数组将如下所示:
Lambo 1; Trabant 2; Car 3;
Array ( "Lambo", "1", "Trabant", "2", "Car", "3" )
$new_data=“Lambo 1;Trabant 2;Car 3;”;
$new_数组=分解(“;”,$new_数据);
foreach($key作为$key的新数组){
#代码。。。
$final_data=explode(“,$key);
if(isset($final_data[0]){echo.“$final_data[0]。;}
if(isset($final_data[1]){echo.“$final_data[1]”。;}
}
如果需要单独访问,则将每个单词和数字放入数组的新键中
preg_match_all(“/(\w+)(\d+);/”,$input_line,$output_array)
单击“预匹配所有”
使用全局正则表达式匹配:
其中元素2和3正好包含您要查找的标记 你考虑过使用PHP的函数吗?或者?@MarkBaker嘿,我已经看过了,但我不确定如何像上面那样将其拆分,我想在一个变量中添加“Lambo”,例如$Item,然后是它后面的数字$Quantity,然后我将回显它们,并重复其他两个,等等。添加一个所需输出的示例..在上分解一次数组拆分
,然后在Space嘿,你能告诉我如何将MySQL查询转换为$in这样的格式吗$结果=mysqli\u查询($conn,$sql\u查询)@Paul请将您的问题作为新问题发布,而不是作为对现有问题的评论。
<?php
$subject = 'Lambo 1; Trabant 2; Car 3;';
$pattern = '/((\w+)\s+(\d+);\s?)+/Uu';
preg_match_all($pattern, $subject, $tokens);
var_dump($tokens);
array(4) {
[0] =>
array(3) {
[0] =>
string(8) "Lambo 1;"
[1] =>
string(10) "Trabant 2;"
[2] =>
string(6) "Car 3;"
}
[1] =>
array(3) {
[0] =>
string(8) "Lambo 1;"
[1] =>
string(10) "Trabant 2;"
[2] =>
string(6) "Car 3;"
}
[2] =>
array(3) {
[0] =>
string(5) "Lambo"
[1] =>
string(7) "Trabant"
[2] =>
string(3) "Car"
}
[3] =>
array(3) {
[0] =>
string(1) "1"
[1] =>
string(1) "2"
[2] =>
string(1) "3"
}
}