hawkmaster: Ersatz für mysql_num_rows?

Beitrag lesen

Hallo zusammen,
ich möchte die Anzahl der Einträge einer MySQL Tabelle zählen und gleichzeitig prüfen ob eine Zeile einen bestimmten Wert beinhaltet.
Mit mysql() war bisher alles problemlos.

$result = mysql_query("Select Tname from tabelle1") or mysql_error();
$anzahltab1 = mysql_num_rows($result);
while ($row = mysql_fetch_array($result)){
 if (strtoupper($row['Tname']) == "--------------------"){
  $foundtname = "yes";
 }
}

Ich möchte das gleiche nun mit PDO versuchen. Hier gibt es ja kein "mysql_num_rows".
1. Eine Möglichkeit wäre:

$resultc = $DBO->query("SELECT COUNT(*) AS Tnamecount FROM tabelle1") ;
$rowc = $resultc->fetch();
echo "<br>anzahl ist " . $rowc['Tnamecount'];

$result = $DBO->query("SELECT Tname from tabelle1") ;
while ($row = $result->fetch()){
 if (strtoupper($row['Tname']) == "--------------------"){
  $foundtname = "yes";
 }
}
So würde es zwar gehen aber ich bräuchte 2 Select Abfragen.

2. Versuch, mit "fetchAll()" und dann das Array zählen geht ja so nicht.
while ($row = $result->fetchAll()){
 if (strtoupper($row[0]['Tname']) == "--------------------"){
  $foundtname = "yes";
 }
}

3. Möglichkeit.
$result = $DBO->query("SELECT Tname from tabelle1") ;
$i = 0;
while ($row = $result->fetch()){
 if (strtoupper($row['Tname']) == "--------------------"){
  $foundtname = "yes";
 }
$i++;
}

Wie würdet ihr das umsetzen?

vielen Dank und viele Grüße
hawk