代码之家  ›  专栏  ›  技术社区  ›  CLiown

PHP函数帮助

php
  •  0
  • CLiown  · 技术社区  · 14 年前

    这是功能:

    function NewsDat($url="http://www.url.com/dat/news.dat", $max=5){
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        $curlresult = curl_exec($ch);
    
        $posts = explode("\n", $curlresult); //chop it up by carriage return
        unset($curlresult);
    
        $num=0; 
        $result=array();
        foreach($posts as $post){
            $result[] = explode("::", $post);
            $num++;
            if($num>$max-1){
                break;
            }
        }
        return $result; 
    }
    
    var_dump(NewsDat());
    

    返回:

    array(5) { [0]=>  array(14) { [0]=>  string(10) "1183443434" [1]=>  string(1) "R" [2]=>  string(46) "Here is some text"...
    

    我需要回音: 1183443434 Here is some text...

    有人能帮忙吗?

    2 回复  |  直到 14 年前
        1
  •  1
  •   Felix Kling    14 年前

    基本的 array 处理?

    $result = NewsDat();
    echo $result[0][0]; //holds "1183443434"
    echo $result[0][2]; //holds "Here is some text"
    

    但我不知道在运行函数时,值是否总是在这个位置。

        2
  •  1
  •   Patrick    14 年前

    以及newsdat返回一个数组数组,如果每行需要这两个字段,那么应该做到这一点:

    $news = NewsDat();
    
    foreach($news as $single_new)
    {
        echo $single_new[0] . " - " . $single_new[2] . "\n";
    }
    

    如果您只需要这两个字段,只需:

    $news = NewsDat();
    $field1 = $news[0][0];
    $field2 = $news[0][2];
    echo $field1 . " - " . $field2 . "\n";