Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/228.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 $tokens数组根本不会更改_Php_Arrays_Token - Fatal编程技术网

Php $tokens数组根本不会更改

Php $tokens数组根本不会更改,php,arrays,token,Php,Arrays,Token,如果我想使用$tokens数组操作,它总是不会发生任何事情。示例代码: $input = array("⋃","⋃","a","⋃","h"); $impl = implode($input); $impl = preg_replace('/⋃{2}/u','$0|',$impl); preg_match_all('~\X~u', $impl, $tokens); $akzent = array("´"); $result = array_pop($tokens); echo print

如果我想使用
$tokens数组
操作,它总是不会发生任何事情。示例代码:

$input = array("⋃","⋃","a","⋃","h");
$impl = implode($input);
$impl = preg_replace('/⋃{2}/u','$0|',$impl);
preg_match_all('~\X~u', $impl, $tokens);


$akzent = array("´");

$result = array_pop($tokens);

echo print_r($result);

是因为
$tokens
不是一个普通数组吗?

这里是一个数组数组。这就是为什么您需要访问第一个子数组中的所有匹配项,
$tokens[0]
。修改代码的以下部分:

preg_match_all('~\X~u', $impl, $matches);
$tokens = $matches[0];
$result = array_pop($tokens);

查看preg_match_all定义的第三个参数(噢@jeff,厚颜无耻的删除!)什么意思没有发生?你的意思是:@法基:是的……对不起,这是个愚蠢的问题。删除了它,意识到它是我自己的
$tokens
是一个包含子数组的数组。在
array\u pop($tokens[0])之前,您需要
array\u pop($tokens[0])
array([0]=>array([0]=>⋃ [1] => ⋃ [2] =>|[3]=>a[4]=>⋃ [5] =>h))
$tokens
array\u pop($tokens)
之后:
array()
如果要插入带有
array\u拼接的内容,我必须做什么?它不能正常工作…不确定您对代码做了什么。例如,如果我想在位置1上插入“ex”
$ex=array(“ex”);阵列拼接($ex,1,0,$tokens)