J'ai un script PHP qui lit à partir d'un CSV et une partie du script a une instruction if
qui va valider une cellule dans le CSV sur si la cellule est vide ou non. Si la cellule est vide, le code de l'instruction if
est exécuté. Si la cellule n'est pas vide, rien ne doit arriver.Comment éviter "Attention: file_get_contents(): Nom de fichier ne peut pas être vide" Lors de la vérification d'une valeur vide
Bien que le script fonctionne parfaitement et fait exactement ce que je dois, je reçois l'avertissement suivant:
Il semble que cet avertissement sera toujours montrer si le code est vérifié contre une cellule vide dans le CSV . Le fait que les cellules soient vides n'est pas un problème car certaines des cellules du fichier CSV sont à juste titre vides, ce qui est l'objectif d'avoir une instruction if
pour vérifier si la cellule est vide ou non.
Voici le segment de mon script relatif à ceci:
// If the previous row has an empty 'Main Image' field, add the additional image field for that row.
// The line below is line 145 from the screenshot above.
if (!empty(base64_encode(file_get_contents($previousDataLine['Main Image'])))) {
$client->catalogProductAttributeMediaCreate(
$sessionId,
$dataLine['Product SKU'],
array(
'file' => array(
'content' => base64_encode(file_get_contents($dataLine['All Images (One Per Row)'])),
'mime' => 'image/png',
),
'position' => $dataLine['Image Rank Position'],
'exclude' => '0'
),
0
);
}
Ai-je fait quelque chose de mal? Pourquoi PHP insiste-t-il pour me montrer cet avertissement même si je ne fais qu'exécuter du code quand la cellule est et non vide. Merci pour votre temps.
Vérifiez si '' est pas vide $ previousDataLine [ 'Image principale']. –
'if (! Vide ($ previousDataLine ['Image principale']) &&! Vide (base64_encode (file_get_contents ($ previousDataLine ['Image principale'])))) {' – Federkun
@Federkun vous devriez l'élever à une réponse. – Stuart