мой if ($arr[$key][0] == 'th')
// не работает
Я пытался преобразовать значение моего массива в строку, но все равно мой оператор if не верен, пожалуйста, помогите !!!
Код:
$preparedstring = "pb,List information,ca;
'th',Name,ca;
th,Surname,ca;
th,ID,ca;
th,Gender,ca;
th,Gender,ca;
pb,personal details,ca;
fl,Name,la;
fl,Surname,la;
fl,ID,la;
fl,Gender,la
";
$columncount = 0;
$firstindex = 0;
$lastindex = 0;
$functionvalue = "";
$outerARR = explode(";", $preparedstring);
$arr = array();
foreach ($outerARR as $arrvalue){$innerarr = explode(",", $arrvalue);
$arr[] = $innerarr;
}
print_r($arr);
unset($arrvalue);
//Read the array
foreach ($arr as $key => $arrvalue1){
$functionvalue = $arr[$key][0];
echo $functionvalue;
//Get column key functions
if ($arr[$key][0] == 'th'){
$firstindex++;
echo "<p>".$a."</p><br/>";
}
elseif ( $firstindex > 0 )
{
$lastindex = $key - 1;
}
foreach ($arrvalue1 as $arrvalue2){
}
$a++;
}
echo "<p>".$arr[0][0].".</p><br/> First Index : ".$firstindex. " Last Index : ".$lastindex. "---".$functionvalue;
Выход:
Array ( [0] => Array ( [0] => pb [1] => List information [2] => ca ) [1] => Array ( [0] => 'th' [1] => Name [2] => ca ) [2] => Array ( [0] => th [1] => Surname [2] => ca ) [3] => Array ( [0] => th [1] => ID [2] => ca ) [4] => Array ( [0] => th [1] => Gender [2] => ca ) [5] => Array ( [0] => th [1] => Gender [2] => ca ) [6] => Array ( [0] => pb [1] => personal details [2] => ca ) [7] => Array ( [0] => fl [1] => Name [2] => la ) [8] => Array ( [0] => fl [1] => Surname [2] => la ) [9] => Array ( [0] => fl [1] => ID [2] => la ) [10] => Array ( [0] => fl [1] => Gender [2] => la ) )
pb 'th' th th th th pb fl fl fl fl
pb.
First Index : 0 Last Index : 0--- fl
Это вывод, как вы можете видеть, что мое утверждение if ложно
Вам нужно удалить все новые строки из строки и затем выполнить операции:
$outerARR = explode(";", preg_replace('~[\r\n]+~', '', $preparedstring));
Других решений пока нет …