如何从结果中删除字符。
当我尝试删除字符时,我有错误
代码:
function getInbetweenStrings($start, $end, $str){
$regex = "/$start([a-zA-Z0-9_]*)$end/";
preg_match_all($regex, $str, $matches);
return $matches[1];
}
$text ='<input type="hidden" name="elementId" value="1826" id="elementId">';
$str = $text;
$str_arr = getInbetweenStrings('<input type="hidden" name="elementId" value="', '" id="elementId">', $str);
print_r($str_arr);
此代码的结果如下所示
Array ( [0] => 1826 )
我只想要1826年
当我将print_r($str_arr);
更改为echo $str_arr;
时,代码只会将数组写入,而不是Array ( [0] => 1826 )
。
您对该代码有任何建议吗?
答案 0 :(得分:2)
$str_arr
是一个格式print_r()
吐出的数组。
这样做echo $str_arr[0];
会为您提供1826
。
答案 1 :(得分:0)
$str_arr
是一个数组,你无法回应它。该数组包含元素,如果它们不是数组,则可以回显它们。
只需这样做:
echo $str_arr[0];
或者您可以将其分配给变量:
$your_var = $str_arr[0];
echo $your_var;
您的代码触发表单提交:
if(isset($_POST['submitted'])){
function getInbetweenStrings($start, $end, $str){
$regex = "/$start([a-zA-Z0-9_]*)$end/";
preg_match_all($regex, $str, $matches);
return $matches[1];
}
$text ='<input type="hidden" name="elementId" value="1826" id="elementId">';
$str = $text;
$str_arr = getInbetweenStrings('<input type="hidden" name="elementId" value="', '" id="elementId">', $str);
//print_r($str_arr);
$var = $str_arr[0];
echo $var;
}
else
{
?>
<form method="post" action="">
<input type="submit" value="Click the button" name="submitted" />
</form>
<?php
}
?>