首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将特定的数据库列放入数组

将特定的数据库列放入数组
EN

Stack Overflow用户
提问于 2012-12-27 08:32:04
回答 2查看 379关注 0票数 1

最初,这个简单的数组和foreach语句可以完美地工作,但我需要将php数组改为从数据库中获取信息:

代码语言:javascript
复制
$serversArray = array(
    "domainname1.com",
    "domainname2.com:port",
    "domainname3.org",
    "000.000.000.000:port");

foreach($serversArray as $server)

代码语言:javascript
复制
ID    IP                Port
1     domainname1.com   
2     domainname2.com   12345
3     domainname3.org   
4     000.000.000.000   54321

我需要弄清楚的是如何将IP和Port列格式化为ip:port (中间有冒号),然后让foreach语句识别每一个,这样它就可以用其他脚本处理它们,就像它如何处理数组一样。(我也尝试过在foreach中使用sprintf,但这破坏了页面。)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-12-27 08:52:24

是否要从数据库查询构建$serversArray?

代码语言:javascript
复制
$serversArray = array();
$sql     = "SELECT ip, port FROM my_table";
$result = mysql_query($sql);
while ($row  = mysql_fetch_array($result))
{
    // if have port include it after : otherwise just include ip
    $serversArray[] = $row['port'] ? "{$row['ip']}:{$row['port']}" : $row['ip'];
}

老式的sql查询只是为了显示构建数组的过程。目前我们应该使用MySQL Functions (PDO_MYSQL)

票数 1
EN

Stack Overflow用户

发布于 2012-12-27 08:52:06

下面是如何让查询以正确的格式返回:

代码语言:javascript
复制
SELECT IF(`PORT` IS NULL, `IP`, CONCAT(`IP`,":",`PORT`)) as `Formatted IP`
FROM YOUR_TABLE;
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14047991

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档