显示搜索结果时无法删除“ARRAY”一词

时间:2013-11-19 18:56:47

标签: php arrays

如何从搜索结果中删除“ARRAY”一词。这是执行搜索的功能。另外,我从mysql数据库中提取数据。一切都很有效,除了在结果上打印“ARRAY”这个词。

<?php

$sql_statement = "SELECT title, type, pubdate, isbn ";
$sql_statement .= "FROM booklib ";

if($keyword != 'ALL') {
    $sql_statement .= "WHERE title LIKE '%$keyword%' ";
}

$sql_statement .= "ORDER BY title, type, pubdate, isbn ";

$result = mysql_query($sql_statement);

$outputDisplay = "";
$myrowcount = 0;

if(!$result) {

    selectResults($statement, $db);
} else {
    if($keyword == 'ALL') {
        $outputDisplay = "<h1>Current Titles: </h1>";
    } else {
        $outputDisplay = "<h1>Current Titles that match: '$keyword'</h1>";
    }

    $outputDisplay .= list($title, $type, $pubdate, $isbn) = explode('*', $line);

    $numresults = mysql_num_rows($result);

    for($i = 0; $i < $numresults; $i++) {

        $myrowcount++;

        $row = mysql_fetch_array($result);


        $title = $row['title'];
        $category = $row['type'];
        $pub_date = $row['pubdate'];
        $isbn = $row['isbn'];

        $outputDisplay .= "<br>$myrowcount.$title";
        $outputDisplay .= "<br>Category: $category";
        $outputDisplay .= "<br>Publication Date: $pub_date";
        $outputDisplay .= "<br>ISBN: $isbn</br>";
    }

    print $outputDisplay;
    getServer();
}

1 个答案:

答案 0 :(得分:1)

这条线就是这样做的:

$outputDisplay .= list($title, $type, $pubdate, $isbn) = explode('*', $line);

分配操作返回正在分配的值。 explode返回一个分配给list中变量的数组。基本上,除了在list中分配变量的副作用之外,就好像你的代码是这样做的:

$outputDisplay .= explode('*', $line);

如果尝试将数组用作字符串,PHP会将数组转换为值为"array"的字符串。此外,系统会生成通知,但可能不会显示通知,因为error_reporting设置不允许输出E_NOTICE错误。