我有这段代码:
<?php
ini_set('display_errors', true);
error_reporting(E_ALL);
include "../../../wp-load.php";
$groups = array();
if (($handle = fopen("groupData.csv", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$group = array('group_id' => 'SOME ID',
'creator_id' => '1',
'name' => $data[0],
'description' => $data[1],
'slug' => groups_check_slug(sanitize_title(esc_attr($data[2]))),
'date_created' => gmdate( "Y-m-d H:i:s" ),
'status' => 'public',
'enable_forum' => '1'
);
$groups[] = $group;
}
fclose($handle);
}
foreach ($groups as $group) {
groups_create_group($group);
}
?>
当我在浏览器中打开脚本时,一切似乎都很好,我得到一个空白屏幕,error_log为空。但它没有做它写的东西。你有什么建议我如何更好地了解出了什么问题?
该脚本的目的是从.csv文件在BuddyPress中创建组。
答案 0 :(得分:1)
这叫做调试:
$handle = fopen("groupData.csv", "r");
if (!$handle) {
trigger_error('Error establishing handle');
} else {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
var_dump($data);
$group = array(
'group_id' => 'SOME ID',
'creator_id' => '1',
'name' => $data[0],
'description' => $data[1],
'slug' => groups_check_slug(sanitize_title(esc_attr($data[2]))),
'date_created' => gmdate( "Y-m-d H:i:s" ),
'status' => 'public',
'enable_forum' => '1'
);
var_dump($group);
$groups[] = $group;
}
fclose($handle);
var_dump($groups);
}
答案 1 :(得分:1)
首先,尝试输出您正在使用的一些数据,以确保脚本实际执行,例如:
print_r($groups);
如果您仍然出现空白屏幕,则可能是White Page of Death - 也就是说,您的脚本在没有任何消息的情况下无声地失败。试试这些:
1 - 在任何开始标记之前删除空格。
2 - 完全删除结束标记(嵌入式PHP标记除外,与输出混合)。