2016-03-05 109 views
0
<?php 
    $urls = file('urls.txt'); 
    foreach ($urls as $url) { 
     print(parse_url($url)); 
    } 
?> 

parse_url將字符串作爲參數,但不包含數組元素與字符串類型。我該怎麼辦?PHP parse_url不適用於數組元素

+0

你的代碼會拋出'Notice:Array to string conversion ...' – RomanPerekhrest

回答

3

字符串與字符串類型的數組元素沒有區別。

您的問題很有可能是file()默認在每個數組元素中包含文件中每行末尾的換行符。請參閱:

http://php.net/manual/en/function.file.php

你會需要使用FILE_IGNORE_NEW_LINES,使其無法做到這一點(見鏈接瞭解詳細信息)

0

讀取文件時,您可以採取不同的方法。拿這個例子:

$fp = fopen('urls.txt', 'r'); 
while(($buffer = fgets($fp, 1024)) != NULL){ 
    //where 1024 is maximum length of each line in file 
    if(gettype($buffer) == 'string'){ 
     echo "$buffer\n"; 
    } 
} 
fclose($fp); 

希望這可以幫助你。