Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/267.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仅从结果分解中提取数字_Php_Regex_Explode - Fatal编程技术网

PHP仅从结果分解中提取数字

PHP仅从结果分解中提取数字,php,regex,explode,Php,Regex,Explode,我在这里爆炸是var\u dump的结果: 我想从explode中得到结果: 7 [remove other string] 0 [if contain "-"] 0 [if contain "-"] 0 [if contain "-"] 这里,我只使用了逗号作为分隔符: var_dump (explode(",", $rowData[0][13])); die(); 有人能解决这个问题吗 谢谢。使用array

我在这里爆炸是
var\u dump
的结果:

我想从explode中得到结果:

7 [remove other string]
0 [if contain "-"]
0 [if contain "-"]
0 [if contain "-"]
这里,我只使用了
逗号
作为分隔符:

var_dump (explode(",", $rowData[0][13]));
die();
有人能解决这个问题吗

谢谢。

使用
array\u map()
函数,并在其中使用
filter\u var()

试一试



Hey,不要添加图像,而是将分解结果粘贴到这里。@iagowp这里是:数组(4){[0]=>string(3)“JZ8”[1]=>string(3)“B-”[2]=>string(3)“S-”[3]=>string(3)“M-”}另外,你应该发布你试图解决这个问题的方法。
$rowData = ['JJ7', 'B-', 'S-', 'M-'];

$result = array_map(function($v) { 
    return abs((int) filter_var($v, FILTER_SANITIZE_NUMBER_INT)); 
}, $rowData );

var_dump( $result );

//output
// array(4) { [0]=> int(7) [1]=> int(0) [2]=> int(0) [3]=> int(0) } 
<?php
$data_result = explode(",", $rowData[0][13])

for($data_count=0;$data_count<count($data_result);$data_count++)
{
    if(substr($data_result[$data_count], -1) == '-')    
    {
        echo $data_result[$data_count]
    }
}
?>