0
我有一個問題,下面的代碼讓我發瘋。我想要做的是將一個給定的數組與一個句子進行比較,然後我需要知道它們在每個出現的句子中的位置,現在腳本只返回一個數組,例如Marta這個名字的位置在句子中找到。我試圖將所有結果合併成一個數組,但我現在有點失落。我希望有人能給我一些線索來實現它。最好的祝福。PHP如何合併一個循環內的兩個數組
$sentence = 'Maria is Maria and Marta is Marta.';
$womennames = array("Maria","Marta");
function poswomen($chain, $words){
foreach($words as $findme){
$valida_existe = substr_count($chain,$findme);
$largo_encuentra = strlen($findme);
$posicion = array();
for($x=0; $x < strlen($chain); $x++){
$posic_x = strpos($chain, $findme, $x);
if($posic_x >= 0){
$posicion[] = $posic_x;
$x = $x+$largo_encuentra;
}
}
$posicion = array_unique($posicion);
$posicion = implode(",",$posicion);
}
return $posicion;
}
poswomen($sentence, $womennames);
print_r (poswomen($sentence, $womennames));
你重置'$每一個在posicion'的'foreach'陣列的每個迭代的開始。你應該在循環之外初始化它。 – Barmar
謝謝Barmar,我並不理解bucle的工作流程。 – Pablete
什麼是_bucle_? – Barmar