I have two columns A and B with varying words, I want to remove the whole line of A and B that in column B is less than 8 characters long.
How do I do this in php?
I have two columns A and B with varying words, I want to remove the whole line of A and B that in column B is less than 8 characters long.
How do I do this in php?
You can use strlen and explode to help you.
The strlen function returns the length of a string Now function explode create an array by dividing the string (2nd parameter) based on the delimiter (1st parameter).
Example:
$string = " testando|12345678 ";
if( strlen(explode("|", $string)[1]) < 8 )
remover_linha();
I think it is more efficient and simple if executed by mysql
$ query="SELECT id, A, B FROM WHERE table CHAR_LENGTH (B) > = 8 ";
$ recordset = mysqli_query ($ query, $ link);
Use strlen .
if (strlen($palavra) > 8) {
//aqui exibi
}
//Busca os dados na tabela
$query = "SELECT id, colunaA, colunaB FROM tabela";
//Executa a query
$result = mysqli_query($query, $link);
//Cria uma variávelaleatória para armazenar os IDs das linhas a serem removidas
$array[] = '';
//Rotina de repetição para percorrer todos os resultados
while($row = mysqli_fetch_array($result)){
//Verifica se a coluna B tem menos de 8 caracteres
if(strlen($row['colunaB']) < 8){
//Se a coluna B tiver menos de 8 caracteres, adiciona o ID da linha em questão na array
$array[] = $row['id'];
}
}
//Agora a array contém apenas os IDs das linhas que precisam ser removidas
foreach ($array as $key) {
//Cria a query com um ID de cada vez
$query = "DELETE FROM tabela WHERE id = $key";
//Executa a query removendo uma linha de cada vez
mysqli_query($query);
}
I think so. I tried to do it in an easy-to-understand way.
To list only rows containing column B longer than 8 characters:
<?php
$pdo = Connection::Conexao(); // Conexão com o banco
$sql = "SELECT * FROM TABELA";
$query = $pdo->prepare($sql);
$query->execute();
while ($dados = $query->fetch(PDO::FETCH_ASSOC)) {
if(strlen($dados["coluna_B"]) > 8) {
// mostrando coluna A e B somente se B tiver mais de 8 caracteres
echo $dados["coluna_A"]." - ".$dados["coluna_B"]."<br />";
} else {
// você também pode inserir aqui um código para deletar os registros onde
// b for menor que 8
}
}
?>