PHP: "non iyi oluşmuş sayısal değer karşılaştı"

3 Cevap
<?php  
function aum($x) {
$contents = $_FILES['userfile']['tmp_name'];
$contents = file("$contents");
$aum = $contents[$x][13].$contents[$x][14].$contents[$x][15].$contents[$x][16].$contents[$x][17].$contents[$x][18].$contents[$x][19].$contents[$x][20].$contents[$x][21].$contents[$x][22].$contents[$x][23];
$faum = money_format('%(#1n',$aum)."\n";    
return $faum;
}
?>

Notice: A non well formed numeric value encountered in ./includes.php on line 28


Merhaba,

I'm getting the error above. Line 28 is: $faum = money_format('%(#1n',$aum)."\n";
I have three questions:

  1. Neden bu hata bildirimi alıyorum ve bunu düzeltmek için ne yapmalıyım?
  2. Bir HTML tabloya düzgün olmayan virgül ayrımı olan bir CSV metin dosyası yüklemek için daha iyi bir yolu var mı? "Düzgün olmayan" virgül ayrılmasıyla Yani: KEY DATA, DATA, $aum DATA,,,,, DATA, vb Gördüğünüz gibi, ben file() fonksiyonunu kullanarak $ Aum kaynaklanan duyuyorum. Sonra $ aum DATA ile karşılık fixed karakter sayısını elde etmek için her satırın başında sağdan karakter sayısını. $ X değişkeni dosyasında satır numaraları karşılık gelir. Sonra satır $ x başına her $ Aum dönebilirsiniz. Ben PHP için yeni duyuyorum ve bunu yapmak için daha akıllı bir yol olup olmadığını bilmek istiyorum.

Ben paylaşmak olabilecek herhangi bir ipucu / tavsiye ederiz.

thx,

3 Cevap

Sen muhtemelen bir sayı olarak biçimlendirilmiş edilemez $ aum bakmak gerekir.

Pop

echo $aum;
echo floatval($aum);

Hata ne olsun görmek için önce. Eğer lider toplayıp veya veri firar eğer bakıyoruz konumunu değiştirmek gerekebilir.

ikinci soru için, fgetcsv CSV dosyaları dışarı veri almak için arkadaşım

http://ee.php.net/fgetcsv

CSV ayrıştırma için, yaklaşımı bir el patlayabilir kullanmaktır. Ben Bu kod pasajını deneyin

$string = "a,,b";
$result = explode(",", $string);
echo "<pre>".print_r($result, true)."</pre>";

Ve ben geri çıktı:

Array
(
    [0] => a
    [1] => 
    [2] => b
)