[请益] PDO SELECT可否虚拟化?

楼主: hjgx (纯真打不赢奸巧)   2019-03-26 19:54:07
public function getAll($table) {
$stmt = $this->pdo->query('SELECT * '.'FROM '.$table );
$recs = [];
while ($row = $stmt->fetch(\PDO::FETCH_ASSOC)) {
$recs[] = [
'id' => $row['id'],
'name' => $row['name'],
'score'=> $row['score']
];
}
return $recs;
}
PHP 的column name都要写明 不能虚拟化。
反观python 超虚拟的:
def getAll(table):
cur.execute("SELECT * from "+table)
rows = cur.fetchall()
for row in rows:
print row[0]
print " ", row[1]
print " ", row[2]
PHP 是否确实如此?还是我学艺不精?
作者: bibo9901 (function(){})()   2019-03-26 20:28:00
不就PDO::FETCH_NUM 或 PDO::FETCH_BOTH ?
作者: mackliu (回不去的大叔)   2019-03-26 23:36:00
你有试过PHP的fetchAll()吗?
作者: tkdmaf (皮皮快跑)   2019-03-27 01:44:00
你所反观的……是很糟的写法好吗?有意义的名称胜于无意义的索引
作者: gpmm (银色)   2019-03-27 08:30:00
看标题我就晕了…什么是 PDO SELECT 虚拟化? @@
作者: shadowjohn (转角遇到爱)   2019-03-27 08:55:00
是篇很虚拟化的文章呢...
作者: knives   2019-03-27 09:40:00
会觉得用索引比名称好的,我无话可说
作者: my1938 (不知道该说什么)   2019-03-27 09:49:00
红明显,用索引的话,如果程式多一点,哪天资料表结构有异动就准备改程式改到哭
作者: wsybu (%小步步%)   2019-03-27 10:58:00
工作用php..目前在学python..我反而python那样用index取字段让我很头痛
作者: MOONRAKER (㊣牛鹤鳗毛人)   2019-03-27 11:06:00
虚拟化咧 你是不是虚拟化周星驰
作者: knives   2019-03-27 14:42:00
to wsybu 你觉得用index很头痛,有试着搜寻其他解法吗比方 https://bit.ly/2TZpSB8 这种解法
作者: dalconan (寒江雪)   2019-03-27 21:55:00
因为你用了PDO::FETCH_ASSOC
作者: honestyer (诚实可靠小郎君)   2019-03-29 10:08:00
会感觉索引比名称好..看来你还没碰到大的案子
作者: tkdmaf (皮皮快跑)   2019-03-29 12:35:00
fetch_array和fetch_row被我长期封印中。然后一开始推文用手机,我其实是要按嘘的
作者: bibo9901 (function(){})()   2019-03-29 23:44:00
不知道为什么有什么好嘘的,是没写过可变动的字段?
作者: tkdmaf (皮皮快跑)   2019-03-30 08:53:00
就嘘他个观念错误,让他学习一下不行?然后可变动字段只有用阵列索引才能做吗?如果你敢在我的专案这样写我绝对把code删掉
作者: dou0228 (7777)   2019-03-31 19:36:00
原来不给 column name 叫做 virtualization
作者: tkdmaf (皮皮快跑)   2019-03-31 23:52:00
楼上,他把“代表”跟“虚拟”二个词给弄错了……嘘是因为现在只要回这个推文我就会给负值。
作者: hiigara (石头)   2019-04-01 09:29:00
我是觉得不用那么凶,PHP好的入门书已经不多了连讨论板都这么坚持的话,以后大家都去写python了不过用数字取真的是比较危险,一来容易写错,二来如果有人alter table这段coded可能就烂了还很难追原因
作者: tkdmaf (皮皮快跑)   2019-04-01 09:55:00
正是因为不要这么凶,所以工程师才害了自己等到真正出大事,可能还会觉得当初有人凶比较好。
作者: MOONRAKER (㊣牛鹤鳗毛人)   2019-04-01 14:48:00
有的时候问题还不是出在自己写的程式 可能出在套件里面
作者: bibo9901 (function(){})()   2019-04-03 02:58:00
phpmyadmin就有用MYSQLI_NUM啊https://tinyurl.com/y6xaa2g5magento2也有用PDO::FETCH_NUMhttps://tinyurl.com/y2fd2rmx人家只是问有什么功能, 为什么要像被戳到点一样狂嘘?把一点很容易避过的小坑当作洪水猛兽 非常可笑...
作者: tkdmaf (皮皮快跑)   2019-04-03 23:58:00
喜欢用你尽量用,没人叫你不要用。
作者: ileadu (千虑一得)   2019-05-01 15:07:00
最后四个字,无误(盖章
作者: brt   2019-07-03 07:13:00
建议还是用个简单的 orm

Links booklink

Contact Us: admin [ a t ] ucptt.com