Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.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
我想转换这个字符串';82,10,1,6150249和#x27;在php中使用int_Php - Fatal编程技术网

我想转换这个字符串';82,10,1,6150249和#x27;在php中使用int

我想转换这个字符串';82,10,1,6150249和#x27;在php中使用int,php,Php,我想将这个'82,10,1,6150249'字符串转换为int。 我使用此代码 $packet = '82,10,1,6,150,249'; $intPacket = (int)$packet; 但是这段代码转换了其中一个 array(1) { [0]=> int(82) } 我要一起转换如果要转换整数数组,请使用下面的 $array = explode(',', '82,10,1,6,150,249'); foreach($array as $index=>$

我想将这个'82,10,1,6150249'字符串转换为int。

我使用此代码

    $packet = '82,10,1,6,150,249';
    $intPacket = (int)$packet; 
但是这段代码转换了其中一个

array(1) { [0]=> int(82) }

我要一起转换

如果要转换整数数组,请使用下面的

$array = explode(',', '82,10,1,6,150,249');
foreach($array as $index=>$value) {
    $array[$index] = intval($value);
}
试试这个, 与数组映射一起使用

$packet = '82,10,1,6,150,249';
$integerIDs = array_map('intval', explode(',', $packet));
输出

    array(6) {
             [0]=>
               int(82)
             [1]=>
               int(10)
             [2]=>
               int(1)
             [3]=>
               int(6)
             [4]=>
               int(150)
             [5]=>
               int(249)
   }

由于您有带数字的字符串,您首先必须将该字符串分解为
分隔符。然后,如果您确实需要
int
表示,请将每个值转换为
int

$packet = '82,10,1,6,150,249';
$ints = array_map(
    function($v) { return (int)$v; },
    explode(',', $packet)
);
var_dump($ints);
// array(6) { [0]=> int(82) [1]=> int(10) [2]=> int(1) [3]=> int(6) [4]=> int(150) [5]=> int(249) } 

您可以按“,”拆分字符串,然后将每个值转换为整数,就像您在代码中所做的那样。

您可以尝试下面注释代码提供的替代方法:

<?php
    $packet         = '82,10,1,6,150,249';

    // FIRST EXPLODE THE STRINGS TO FORM AN ARRAY...
    // USING COMMA (,) AS DELIMITER
    $arrPacket      = explode(",", $packet);         
    $arrIntPacket   = [];

    // LOOP THROUGH THE RESULT ($arrPacket)
    // CONVERTING EACH SINGLE ELEMENT TO AN INTEGER   
    foreach($arrPacket as $key=>$strVal){
        $arrIntPacket[] = intval($strVal);
    }

    // THE ARRAY: $arrIntPacket NOW CONTAIN INTEGER VALUES
    // OF EACH ELEMENT IN THE ARRAY:
    var_dump($arrIntPacket);

分解
并转换每个部分。是否要获取每个用逗号分隔的整数?