#php #string
#php #строка
Вопрос:
Я знаю, что этот вопрос был опубликован ранее. У кого-то была та же проблема, что и у меня, и он исправил ее, исправив свой стиль кодирования. Никаких дополнительных подробностей предоставлено не было. Я использую UTF-8 . Я использую Windows 10 . Ниже приведен мой код и результаты в комментариях. Любая помощь приветствуется.
$nickp[0] = trim($nickp[0]);
$nickp[1] = trim($nickp[1]);
$nickp[2] = trim($nickp[2]);
echo"<br>";
echo"var dump on nickp";
echo"<br>";
var_dump($nickp); // returns array(3) { [0]=> string(459) "15336.50 " [1]=> string(36) "" [2]=> string(0) "" }
echo"<br>";
echo"here is a print r..";
echo"<br>";
print_r($nickp);
echo"<br>";
$nickpf = (float)$nickp;
echo"<br>";
echo"var dump on float nickpf";
echo"<br>";
var_dump($nickpf); // returns float(1)
echo"<br>";
echo"<br>";
echo"var dump on float nickpf[0]";
echo"<br>";
var_dump($nickpf[0]); returns NULL
echo"<br>";
echo"just nickpf";
echo"<br>";
echo $nickpf; // returns 1
echo"<br>";
$nickpf =( $nickpf -13380.50);
echo"just nickpf birth year";
echo"<br>";
echo $nickpf;// returns - 13379.50
echo"<br>";
Комментарии:
1. Можете ли вы просто указать значение
$nickp
в комментарии к приведенному выше вопросу?2. Кажется, вы спрашиваете, почему
(float)$array
равно 1. Если это так, см. floatval . Пустые массивы возвращают 0, непустые массивы возвращают 1.3. 15336.50 — это строка, которую я хочу использовать в качестве числа с плавающей точкой
Ответ №1:
Это то, что вы ищете
$nickp = ["15336.50", "12312.11", "123123.22"]; // example
$nickp[0] = trim($nickp[0]);
$nickp[1] = trim($nickp[1]);
$nickp[2] = trim($nickp[2]);
echo floatval(preg_replace('/[[:^print:]]/', "", $nickp[0]));
Комментарии:
1. интересный floatval($ nickp[0]) возвращает 0, что означает, что у меня есть скрытые символы перед номерами строк.
2. @sonny, вот почему я попросил напечатать результат в моем первом комментарии. Я явно сомневался, когда вы упомянули
returns array(3) { [0]=> string(459) "15336.50 "
. Я отредактировал свой ответ, проверьте это3. по-прежнему возвращает 0. В качестве фона стиля есть возврат скрытой строки и другая скрытая фигня, которая может менять цвета.