SimpleXML 预期数组错误 PHP

SimpleXML expecting array error PHP

好的,下面是我的代码

<?php
// Last 10 Jobs
function last10IT(){
$xml = simplexml_load_file('http://www.cv-library.co.uk/cgi-bin/feed.xml?affid=101899');


$new_array = array();
//$limit = 5;
//$c = 0;
foreach ($xml->jobs->job as $job) {
//    if ($limit == $c) {
//        break;
//    }
    $jobref = $job->jobref;
    $title = $job->title;
    $date = $job->date;
    $new_array[$jobref.$date] = array(
        'jobref' => $jobref,
        'date' => $date,
        'title' => $title,
        'salary' => $job->salary,
        'location' => $job->location,
    );
}
}
ksort($new_array);
$showl = 10;
$n = 0;
foreach ($new_array as $date => $listing) {

    print $listing['title'] . PHP_EOL;

}
?>

我想让它做的就是按类别过滤并显示最多 10 个结果 例如 它 那么有没有一种方法可以将类别值传递到我希望它过滤的函数中 而不是必须为每个类别复制

我得到的是:

Warning: ksort() expects parameter 1 to be array, null given in C:\wamp\www\RECRUITMENTFAIR\functions.php on line 28

请大家帮忙

导致此错误的原因非常简单,但它让我发疯,因为我就是看不到它

相对简单:您尝试在范围外使用变量 $new_array: 它在您的 last10IT() 函数中定义,但该函数在第一个 foreach.

之后结束

您应该 return 数组并调用函数来获取数组,或者将带有 ksort 和打印的部分移动到函数中,具体取决于您的需要。

还因为没有启用 PHP 扩展 xmlrpc 而遇到问题! 多么好的工具! 这就是为什么我有一半时间无法打开