以下函数返回空字符串。有人可以建议下面的代码有什么问题吗?我正在对这个函数进行AJAX调用。
function LoadImagesForMenus() {
$filenameArray = [];
$validextensions = ["gif", "jpg", "jpeg", "png"];
$handle = opendir(get_template_directory().'/analyzer-images/');
while ($file = readdir($handle)) {
if ($file !== '.' && $file !== '..' && !empty($file)) {
$filenameArray[] = $file;
$ext = pathinfo($file, PATHINFO_EXTENSION);
if (in_array($ext, $validextensions)) {
$fileArray = [];
$fileArray["fileName"] = "http://xn--ernhrungsberaterzrich-71b08c.ch/wp-content/themes/abundance/analyzer-images/$file";
list($width, $height) = getimagesize("/home/httpd/vhosts/xn--ernhrungsberaterzrich-71b08c.ch/httpdocs/wp-content/themes/abundance/analyzer-images/$file");
$fileArray["width"] = $width;
$fileArray["height"] = $height;
if ($width !== null && $height !== null) {
array_push($filenameArray, $fileArray);
}
}
}
}
echo json_encode($filenameArray);
exit(0);
}
由于
答案 0 :(得分:0)
对json_encode()的调用失败。您应该检查对json_encode的调用是否有错误。
$json = json_encode( $filenameArray );
if ( $json !== FALSE ) {
echo $json;
} else {
error_log( 'json_encode() failed with error=' . json_last_error() );
}
json_encode()可能无法处理另一个条目。您应该跳过此条目或将选项设置为json_encode()来处理条目中的字符。