免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 5511 | 回复: 10

如何将文本中数据 赋值给PHP程序中的变量? [复制链接]

论坛徽章:
0
发表于 2011-11-22 12:57 |显示全部楼层
如何将文本中数据 赋值给PHP程序中的变量?

小弟刚学PHP,遇到一个问题
如有个文本内容如下:
  1. aa   4578
  2. bb  3789
  3. cc  478
  4. dd  1456
复制代码
如果将文本中第二列数据依次赋值给PHP程序中的变量zongshu1,zongshu2,zongshu3,zongshu4?

论坛徽章:
0
发表于 2011-11-22 13:06 |显示全部楼层
一行一行读出来 foreach 循环 然后用空格分隔 取第二个数组 分别赋值

论坛徽章:
0
发表于 2011-11-22 13:10 |显示全部楼层
通过执行外部命令可以不
如:
  1. $zongshu1=shell_exec(`awk '/^a/{print $2}'  test`);
  2. echo $zongshu;
复制代码
但报了错:sh: 4578: command not found

论坛徽章:
0
发表于 2011-11-22 13:43 |显示全部楼层
不要用外部命令```(要考虑PHP安全)
就用php读文件

论坛徽章:
0
发表于 2011-11-22 13:52 |显示全部楼层
回复 4# yangyang1581
  1. $file = '/test;
  2. $handle = fopen( $file , 'r' );
  3. while ( !feof($handle) )
  4. {
  5.         $row = fgets($handle);
  6.         $content = explode(' ' , $row);
  7.         $zongshu1=$content[0];
  8.         $zongshu2=$content[1];
  9.         $zongshu3=$content[2];
  10.         $zongshu4=$content[3];
  11. }
  12.   echo $zongshu1;
复制代码
这样写可以吗?

论坛徽章:
1
2015年迎新春徽章
日期:2015-03-04 09:55:28
发表于 2011-11-22 14:30 |显示全部楼层
  1. $file = 'test';
  2. $handle = fopen( $file , 'r' );
  3. $i = 1;
  4. while (!feof($handle))
  5. {
  6.     $row = fgets($handle);
  7.     if ($row) {
  8.         $content = explode(' ' , $row);
  9.         $var  = "zongshu".$i;
  10.         $var = $content[1];
  11.         $i++;
  12.     }
  13. }
  14. echo $zongshu1;
  15. echo '<br />';
  16. echo $zongshu2;
  17. echo '<br />';
  18. echo $zongshu3;
  19. echo '<br />';
  20. echo $zongshu4;
  21. echo '<br />';
复制代码
回复 5# moshangxie

注意下你的文本列之间有几个空格。

论坛徽章:
0
发表于 2011-11-22 15:25 |显示全部楼层
回复 6# xinglu1983


    55555
运行后还是报错
  1. PHP Notice:  Undefined variable: zongshu1 in /var/www/html/mailer/ctc_mail.php on line 37
  2. <br />PHP Notice:  Undefined variable: zongshu2 in /var/www/html/mailer/ctc_mail.php on line 39
  3. <br />PHP Notice:  Undefined variable: zongshu3 in /var/www/html/mailer/ctc_mail.php on line 41
  4. <br />PHP Notice:  Undefined variable: zongshu4 in /var/www/html/mailer/ctc_mail.php on line 43
  5. <br />PHP Notice:  Undefined variable: zongshu1 in /var/www/html/mailer/ctc_mail.php on line 57
复制代码

论坛徽章:
1
2015年迎新春徽章
日期:2015-03-04 09:55:28
发表于 2011-11-22 15:59 |显示全部楼层
回复 7# moshangxie


    论坛的代码显示自动过滤掉了一个“$”符号,第10行的$var = $content[1]; 是 $$var = $content[1];

论坛徽章:
0
发表于 2011-11-22 17:00 |显示全部楼层
  1. foreach(file('test.txt') as $i=>$c)
  2. {
  3.         ${'aaaa'.$i} = $c;
  4. }

  5. echo $aaaa2;
复制代码
  1. cc 478
复制代码

论坛徽章:
13
双鱼座
日期:2013-10-23 09:30:05数据库技术版块每日发帖之星
日期:2016-04-20 06:20:00程序设计版块每日发帖之星
日期:2016-03-09 06:20:002015亚冠之塔什干火车头
日期:2015-11-02 10:07:452015亚冠之德黑兰石油
日期:2015-08-30 10:07:07数据库技术版块每日发帖之星
日期:2015-08-28 06:20:00数据库技术版块每日发帖之星
日期:2015-08-05 06:20:002015年迎新春徽章
日期:2015-03-04 09:57:09辰龙
日期:2014-12-03 14:45:52酉鸡
日期:2014-07-23 09:46:23亥猪
日期:2014-03-13 08:46:22金牛座
日期:2014-02-11 09:36:21
发表于 2011-11-23 08:54 |显示全部楼层
楼上方法不错
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP