Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/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
PHP解析字符串的%left个字符_Php - Fatal编程技术网

PHP解析字符串的%left个字符

PHP解析字符串的%left个字符,php,Php,我需要在80%的左边字符上匹配一些字符串。我可以使用len(),然后计算出该长度的80%,并将其设置为变量。然后我可以做substr($var,0,$len80) 这应该选择80%的字符串,但由于我在2个循环中,我必须在两侧都这样做,我希望有一个更好的方法来做到这一点。有人知道一种更简单、更有效的方法来选择字符串的某个百分比吗 更新 最后我做的是这样的$a2=substr($a,0,(strlen($a)*.80)) 同样的概念不需要设置多个变量。抓住左边的80%是非常简单的: $string

我需要在80%的左边字符上匹配一些字符串。我可以使用
len()
,然后计算出该长度的80%,并将其设置为变量。然后我可以做
substr($var,0,$len80)

这应该选择80%的字符串,但由于我在2个循环中,我必须在两侧都这样做,我希望有一个更好的方法来做到这一点。有人知道一种更简单、更有效的方法来选择字符串的某个百分比吗

更新

最后我做的是这样的
$a2=substr($a,0,(strlen($a)*.80))


同样的概念不需要设置多个变量。

抓住左边的80%是非常简单的:

$string = "This is my string";
$length = strlen($string);

echo substr($string, 0, $length * .8);
要从中间抓住50%,在起始位置偏移25%:

$result = substr($string, $length * .25, $length * .5);

// Outputs '...is my s...'
echo "..." . trim($result) . "...";

演示:

你所说的
am in 2 loop是什么意思,我必须在两边都做
你能添加一些代码吗?我想你错了,你在这件事上有问题。代码将运行得非常快,任何其他函数都不可避免地需要花费更多的时间。谢谢您的帮助。我用了这个的一个变体。