ThatsMe
Portugal@Home Member
Viva.
Estou com uma quase paragem cerebral neste momento, por isso acredito que isto seja a dúvida mais vergonhosa que alguma vez porei na minha vida.
Tenho um array associativo em PHP que visa manter registado (numa cookie) o termo que foi pesquisado e o número de vezes que esse mesmo termo foi pesquisado pelo utilizador. Ou seja:
[Cidade pesquisada => N vezes (igual ou superior a 1)]
Ficando, por exemplo, com a seguinte estrutura:
[porto => 2]
[lisboa => 6]
[braga => 1]
O que eu pretendo é, ao ser feita uma pesquisa, correr todo o array para verificar se a cidade alguma vez foi pesquisada. Se sim, é incrementado 1 ao valor. Se não, a pesquisa é adicionada no final do array com o value 1.
Assim sendo, se a pesquisa for "lisboa", o array ficará assim:
[porto => 2]
[lisboa => 7]
[braga => 1]
Se a pesquisa for "algarve":
[porto => 2]
[lisboa => 6]
[braga => 1]
[algarve => 1]
Até ao momento tenho isto, mas estou completamente encravado porque não consigo arranjar uma forma de, caso a pesquisa não esteja no array, a adicionar no fim.
Creio que a parte inicial está correta, caso o valor de $search seja igual à key (cidade), vai incrementar o value. O problema é quando a cidade não está no array... Devo trabalhar com um booleano para poder saber, no final do foreach, se a cidade foi ou não encontrada?
Obrigado, desde ja.
Estou com uma quase paragem cerebral neste momento, por isso acredito que isto seja a dúvida mais vergonhosa que alguma vez porei na minha vida.
Tenho um array associativo em PHP que visa manter registado (numa cookie) o termo que foi pesquisado e o número de vezes que esse mesmo termo foi pesquisado pelo utilizador. Ou seja:
[Cidade pesquisada => N vezes (igual ou superior a 1)]
Ficando, por exemplo, com a seguinte estrutura:
[porto => 2]
[lisboa => 6]
[braga => 1]
O que eu pretendo é, ao ser feita uma pesquisa, correr todo o array para verificar se a cidade alguma vez foi pesquisada. Se sim, é incrementado 1 ao valor. Se não, a pesquisa é adicionada no final do array com o value 1.
Assim sendo, se a pesquisa for "lisboa", o array ficará assim:
[porto => 2]
[lisboa => 7]
[braga => 1]
Se a pesquisa for "algarve":
[porto => 2]
[lisboa => 6]
[braga => 1]
[algarve => 1]
Até ao momento tenho isto, mas estou completamente encravado porque não consigo arranjar uma forma de, caso a pesquisa não esteja no array, a adicionar no fim.
PHP:
foreach ($cookie_val as $key => $value) {
if($search == $key){
//caso a pesquisa já exista
$value++;
}
else{
}
Creio que a parte inicial está correta, caso o valor de $search seja igual à key (cidade), vai incrementar o value. O problema é quando a cidade não está no array... Devo trabalhar com um booleano para poder saber, no final do foreach, se a cidade foi ou não encontrada?
Obrigado, desde ja.