درمورد چاپ کردن مقادیر با تابع implode که بصورت آرایه ورودی میگیره، من دو حالت زیر رو تست کردم و هردو حالت ارور خاص خودش رو میداد!!
$result = "SELECT fullName, age FROM users where id < 8 ";
$stmt = $db->prepare($result);
$stmt->execute();
$data = $stmt->fetchAll(PDO::FETCH_OBJ);
echo implode(" | ", (array)$data) . PHP_EOL;
اگر در بالا fetch رو به صورت object برگردونیم ارور زیر رو میده(من قبلش (array) گذاشتم که تبدیل به ارایه بشه ولی اروری که میده میگه نمیتونه به string تبدیل شه:
PHP Fatal error: Uncaught Error: Object of class stdClass could not be converted to string in /opt/lampp/htdocs/7learn.php/showPDO.php:10
Stack trace:
#0 /opt/lampp/htdocs/7learn.php/showPDO.php(10): implode()
#1 {main}
thrown in /opt/lampp/htdocs/7learn.php/showPDO.php on line 10
و اگر به صورت associative array مقدار رو برگردونم ارور زیر رو بهم میده:
PHP Notice: Array to string conversion in /opt/lampp/htdocs/7learn.php/showPDO.php on line 10
PHP Notice: Array to string conversion in /opt/lampp/htdocs/7learn.php/showPDO.php on line 10
PHP Notice: Array to string conversion in /opt/lampp/htdocs/7learn.php/showPDO.php on line 10
PHP Notice: Array to string conversion in /opt/lampp/htdocs/7learn.php/showPDO.php on line 10
PHP Notice: Array to string conversion in /opt/lampp/htdocs/7learn.php/showPDO.php on line 10
PHP Notice: Array to string conversion in /opt/lampp/htdocs/7learn.php/showPDO.php on line 10
PHP Notice: Array to string conversion in /opt/lampp/htdocs/7learn.php/showPDO.php on line 10
Array | Array | Array | Array | Array | Array | Array
میشه بگید این مشکلی که همش ارور تبدیل به string میده در صورتیکه ما تبدیل بهش نمیکنیم برای چی هستش؟
ممنون!