再见Windows

这里的 Windows 是指 Microsoft 的那个 Windows。在领略了 Ubuntu 的桌面效果后,早就想把 Windows 弃用了,但考虑到有很多的资料不便移植,所以一直用盗版的 Windows 7。

前几由于安装了最新的 Mysql(5.5.5)和PHP(5.3.3),导致我电脑上的 Apache 出了问题:PHP一旦操作 Mysql 就会出现“无法显示该网页“,什么错误代码都没有。正是这个问题,让我下载了N个版本的 Mysql,但都没能解决。终于,在我一遍又一遍的配置 Mysql 服务时,一不小心,之前的所有数据都被我彻底删除了。虽然用数据恢复工具把数据都恢复了,但是数据库的目录结构没有保存下来,真后悔自己习惯按“Shift+Delete“……

我把所有问题都归就于无辜的 Windows 上。这下没什么可顾虑的了,对于我这样不喜欢玩游戏的电脑用户,真不知道 Ubuntu 不能满足我的什么需求?于是带着懊恼,彻底删除了 Windows 7,安装了“向往已久”的 Ubuntu 桌面版。我并不熟悉 Ubuntu 的操作,一些配置,一边上网查找资料,就这样开始了我的 Ubuntu 之旅。

附:PHP操作Mysql时提示“无法显示该网页”的解决方法

最后证实,并非 Windows 的问题,而是 Mysql 5.0 以上的 lib(libmysql.dll) 文件导致的。重新下载了 Mysql 5.0.* 的 lib 文件,重启 Apache 后恢复正常。

PHP实现结果集的另类排序

前天去面试的时候,给我出了一个问题:使用PHP将结果集进行排序,首先输出ID最大的值,然后输出ID最小的值;再输入剩余结果集中ID最大的值,接着输出剩余结果集中ID最小的值,以此类推,一直循环下去。

说实话,当时确实把我难住了,一直以为用一句SQL语句就可以实现这个功能,但我确实不知道什么样的SQL语句可以实现这样的排序方法,我只知道升序和降序两种排序。不由觉的自己了解的太少,只是会一些基本的应用,一些很别调的要求就无法完成了。

当然,这就说明自己的水平还很次,还要努力学习!

这个问题没解决,心里实有些不甘心。于是晚上回到家后便开始琢磨起来:什么样的SQL语句才可以实现这种排序呢?无奈,只好请教芽雨兄了,芽雨给我的答案很明确:SQL几乎不可能实现,要使用数组来进行操作。接下来我便一些写代码测试,一边想解决方法,一边上网查找PHP对数组操作的函数。

执行结果如下:

结果按ID升序排序

结果集的另类排序

终于算是完美的解决了,但不知道是否还有更简单的办法来实现?