Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何拆分包含字符串和整数的sting? P> >考虑这个,例如 abcd.exe 1234 xyrs 6 987654 fghij.exe 1235 xyqs 5 897645_Php_Arrays_String_Function - Fatal编程技术网

Php 如何拆分包含字符串和整数的sting? P> >考虑这个,例如 abcd.exe 1234 xyrs 6 987654 fghij.exe 1235 xyqs 5 897645

Php 如何拆分包含字符串和整数的sting? P> >考虑这个,例如 abcd.exe 1234 xyrs 6 987654 fghij.exe 1235 xyqs 5 897645,php,arrays,string,function,Php,Arrays,String,Function,是提供给一个变量的数据,现在我想将“abcd.exe”输入到单独的变量中,并将“987654”输入到另一个变量中,或者可以是两个数组一个无正则表达式的解决方案。 如果你想要一套的话。。。使用array\u chunk $arr = array_chunk($arr,2); 输出: Array ( [0] => abcd.exe [1] => 987654 [2] => fghij.exe [3] => 897645 ) Array (

是提供给一个变量的数据,现在我想将“abcd.exe”输入到单独的变量中,并将“987654”输入到另一个变量中,或者可以是两个数组

一个无正则表达式的解决方案。 如果你想要一套的话。。。使用
array\u chunk

$arr = array_chunk($arr,2);
输出:

Array
(
    [0] => abcd.exe
    [1] => 987654
    [2] => fghij.exe
    [3] => 897645
)
Array
(
    [0] => Array
        (
            [0] => abcd.exe
            [1] => 987654
        )

    [1] => Array
        (
            [0] => fghij.exe
            [1] => 897645
        )

)

试试这个-你可以使用php explode

<?php

$str='abcd.exe 1234 xyrs 6 987654 fghij.exe 1235 xyqs 5 897645';

$arr=explode(' ', $str);
$one=$arr[0];
$two=$arr[4];

?>

使用explode方法执行此操作

$vararr=explode(" ","abcd.exe 1234 xyrs 6 987654 fghij.exe 1235 xyqs 5 897645");
$exe=$vararr[0]; $numb=$vararr[4]

使用explode()方法将字符串拆分为数组。然后检查数组的每个元素是否为数字。根据其类型,创建两个数组。一个包含数值,另一个包含字符串值。代码如下:

$string = "abcd.exe 1234 xyrs 6 987654 fghij.exe 1235 xyqs 5 897645";
$string_array = explode(" ",$string );

$int_arr = array();
$str_arr = array();

foreach($string_array as $val) {
    if (is_numeric($val)) {
        $int_arr[] = $val;
    }
    else {
        $str_arr[] = $val;
    }
}

print_r($int_arr);
print '<br/>';
print_r($str_arr);
$string=“abcd.exe 1234 xyrs 6 987654 fghij.exe 1235 xyqs 5 897645”;
$string_数组=分解(“,$string);
$int_arr=array();
$str_arr=array();
foreach($string_数组为$val){
如果(是数值($val)){
$int_arr[]=$val;
}
否则{
$str_arr[]=$val;
}
}
打印(整数);
打印“
”; 打印($str_arr);
我认为您可以使用内置的拆分函数按空间拆分字符串(我假设此处可以通过查看您发布的字符串将空格用作分隔符),并创建字符串数组

然后,您可以循环遍历数组中的每个元素,检查该元素是数字还是字符串,并基于此将它们放入适当的bucket或数组中

我希望这会有所帮助

感谢和问候

Chetan Ranpariya

$exploded_string=explode(“,$string”);
$string = "abcd.exe 1234 xyrs 6 987654 fghij.exe 1235 xyqs 5 897645";
$string_array = explode(" ",$string );

$int_arr = array();
$str_arr = array();

foreach($string_array as $val) {
    if (is_numeric($val)) {
        $int_arr[] = $val;
    }
    else {
        $str_arr[] = $val;
    }
}

print_r($int_arr);
print '<br/>';
print_r($str_arr);