Я предлагаю вам добавить обе панели при создании фрейма, а затем изменить видимую панель, вызвав setVisible (true / false) на обоих. При вызове setVisible родитель будет уведомлен и попросит перекрасить себя.
Попробуйте изменить $found = strpos($file,$string);
на $found = strpos($line,$string);
Эхо ложного логического выражения не будет отображаться. Попробуйте изменить его на var_dump
, и вы увидите, что для boolean
установлено значение false
.
Извините, я сделал ошибку при написании кода, это хорошая:
function checkIfExist($string)
{
$path = "\\\\server\\temp\\test.txt";
$file = file($path);
foreach( $file as $line )
{
echo $line; //display the string in this line
$found = strpos($line,$string);
echo $found; //display nothing, not even a boolean/int
var_dump($found); //display boolena(false) for all the test even if the
string is well present once.
}
return $found;
}
Этот код дает тот же результат
foreach( $file as $line )
{
echo $line; //display "www.google.be"
echo $string; //also display "www.google.be"
//but when I then if the line contain the string, the function doesn't find
it!!!
$pos = stripos($line,$hostname);
var_dump($pos); // FALSE for all the test
}
Я сделал это в другом коде, и у меня никогда не было этой проблемы.
Настройка отладки, поэтому вы видите значения strpos. Если отладка не может быть организована, чем vardump $ line и $ string. Вы, вероятно, получите неожиданные значения. Также старайтесь избегать проблем с типизацией. Возможно, это будет работать лучше.
if (strpos($line,$string) != false){...}else{...}