如何使用php的strpos函数计算数组中的相似单词



我使用xpdf将pdf转换为文本,然后在regex函数的帮助下搜索pdf中冒号后的单词,然后用php的strpos函数循环这些数据并将其存储到数据库中。它对我的单一数据有效。但对于多个相同的数据,我不知道如何将这些数据添加到数据库中。

一步一步地,我会向你展示我的代码和响应:

我使用xpdf将我的pdf转换为文本格式,代码如下。

$text1 = (new Pdf('C:xpdf-tools-win-4.00bin64pdftotext.exe'))
->setPdf($pathoffile)
->setOptions(['layout', 'layout'])
->text();
$string = $text1;

echo $string上,我正在获取数据,即:

In respect of Shareholders
Name:                                    xyz
Residential address:                     dublin
No of Shares:                            40
Name:                                    abc
Residential address:                     canada
No of Shares:                            2

因此,我得到了2个股东与我的上述数据。现在我想将这些数据存储在我的表shareholders中。

现在,我使用preg_match_all函数将这些数据转换为数组,然后存储到数据库中。

$array = array('Name','Residential address','No of Shares');
preg_match_all($regex, $string, $matches);

使用下面的函数获取带有strpos((的数组。

function strposa($haystack, $needles=array(), $offset=0) {
$chr = array();
foreach($needles as $needle) {
$res = strpos($haystack, $needle, $offset);
if ($res !== false) $chr[$needle] = $res;
}
if(empty($chr)) return false;
return min($chr);
}
if($this->strposa($text1, $array) !== false) 
{
foreach ($matches as  $value) {
//print_r($matches);
$value=array_map('trim',$value);
$directors_info->name= $value[0];
$directors_info->address= $value[1];
$directors_info->shares= $value[2];
}
}

我的print_r($matches)数组显示数据:

[0] => Array
(
[0] =>              xyz
[1] =>              dublin
[2] =>              40
[3] =>              abc
[4] =>              canada
[5] =>              2
)

但如果我有多个股东,那对我来说就行不通了。我的预期产出是:

[0] => Array
(
[0] =>              xyz
[1] =>              dublin
[2] =>              40
[0] =>              abc
[1] =>              canada
[2] =>              2
)

我关心的是在表中用2行分别存储2个数据。如何实现这类数据。提前谢谢。

不能有重复的键,因此可以创建多维数组。如果每一行的数据总是在那里,那么可以使用大小为3:的array_chunk

$matches = array_chunk($matches,3);

这会给你:

Array
(
[0] => Array
(
[0] => xyz
[1] => dublin
[2] => 40
)
[1] => Array
(
[0] => abc
[1] => canada
[2] => 2
)
)

演示

相关内容

  • 没有找到相关文章

最新更新