$stmt
प्रकार का है PDOStatement
. उस वर्ग में कोई num_rows
नहीं है संपत्ति।
हो सकता है कि आप rowCount
ढूंढ रहे हों
इसके बजाय, लेकिन इसके लिए दस्तावेज़ीकरण कहता है:
अगर आप वास्तव में SELECT
वह सारा डेटा, आप मज़बूती से यह निर्धारित कर सकते हैं कि परिणाम सेट पर पुनरावृत्ति करके कितनी पंक्तियाँ लौटाई गईं (या बस fetchAll
और सरणी में आइटम गिनें)। यदि आपको डेटा की नहीं बल्कि केवल एक संख्या की आवश्यकता है, तो SELECT COUNT
. का उपयोग करें इसके बजाय।
तो, क्वेरी को बदले बिना पंक्तियों को गिनने के लिए:
$result = $stmt->execute();
$rows = $stmt->fetchAll(); // assuming $result == true
$n = count($rows);