Heim >Backend-Entwicklung >PHP-Tutorial >php怎么获取文件里的内容

php怎么获取文件里的内容

WBOY
WBOYOriginal
2016-06-23 13:21:191110Durchsuche


一个txt文件,里面有格式为 ip----域名 的数据,怎么实现:
xx.com/?ip=xxx.xxx.xxx.xxx,则获取并显示对应ip----域名的这个域名,xxx.com
反之,xx.com/?domain=xxx.com,则获取并显示对应ip----域名的这个ip,xxx.xxx.xxx.xxx
可以实现么?


回复讨论(解决方案)

取出文件的内容,根据换行跟分隔符切分数据

取出文件的内容,根据换行跟分隔符切分数据


具体怎么实现呢,试写了下,不过没用呢

说的稍微详细点!!!

说的稍微详细点!!!


一个txt文件,里面有格式为 ip----域名 的数据,怎么实现:
每条数据的ip和域名是对应的
网页$_GET['ip'],则获取并显示对应ip的域名
反之,网页$_GET['domain'],则获取并显示对应域名的ip
如以下数据:
1.2.3.4----abc.com
5.8.6.9----dfg.com
······
网页get ip,如:?ip=1.2.3.4,则echo对应的域名 abc.com
网页get domain,如:?domain=dfg.com,则echo对应的ip 5.8.6.9
可以实现么?

text.txt

192.168.1.2---xxx.com192.168.1.3---xx.com


test.php
$ip = isset($_GET['ip'])? $_GET['ip'] : '';$domain = isset($_GET['domain'])? $_GET['domain'] : '';if($ip=='' && $domain==''){    exit('ip and domain is empty');}$file = 'test.txt';$filedata = file_get_contents($file);$arr1 = array();$arr2 = array();$data = explode("\n", $filedata);foreach($data as $k=>$v){    $tmp = explode('---', $v);    $arr1[$tmp[0]] = $tmp[1];    $arr2[$tmp[1]] = $tmp[0];}if($ip!=''){    if(isset($arr1[$ip])){        echo $ip.'---'.$arr1[$ip];    }else{        echo 'ip not exists';    }}elseif($domain!=''){    if(isset($arr2[$domain])){        echo $arr2[$domain].'---'.$domain;    }else{        echo 'domain not exists';    }}


http://xxx.com/test.php?ip=192.168.1.2
http://xxx.com/test.php?domain=xxx.com

text.txt

192.168.1.2---xxx.com192.168.1.3---xx.com


test.php
$ip = isset($_GET['ip'])? $_GET['ip'] : '';$domain = isset($_GET['domain'])? $_GET['domain'] : '';if($ip=='' && $domain==''){    exit('ip and domain is empty');}$file = 'test.txt';$filedata = file_get_contents($file);$arr1 = array();$arr2 = array();$data = explode("\n", $filedata);foreach($data as $k=>$v){    $tmp = explode('---', $v);    $arr1[$tmp[0]] = $tmp[1];    $arr2[$tmp[1]] = $tmp[0];}if($ip!=''){    if(isset($arr1[$ip])){        echo $ip.'---'.$arr1[$ip];    }else{        echo 'ip not exists';    }}elseif($domain!=''){    if(isset($arr2[$domain])){        echo $arr2[$domain].'---'.$domain;    }else{        echo 'domain not exists';    }}


http://xxx.com/test.php?ip=192.168.1.2
http://xxx.com/test.php?domain=xxx.com


测试完美运行,非常感谢!
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn