Php array_combine добавляет новую линию, разбивая скрипт [Duplicate]Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Php array_combine добавляет новую линию, разбивая скрипт [Duplicate]

Сообщение Anonymous »

Я использовал следующий массив, который работает < /p>
$header_list = [
"Symbol",
"Description",
"Qty",
"Price Per Share",
"Price Chng % (Price Change %)",
"Price Chng $ (Price Change $)",
"Market Value",
"Day Chng % (Day Change %)",
"Day Chng $ (Day Change $)",
"Cost Basis",
"Gain",
"Gain %",
"Reinvest",
"Reinvest Capital Gains?",
"Div Price",
"Volume",
"ITM"
];
< /code>
У меня есть жесткий кодированный в файле. Я хотел разместить это в базе данных, разделенной Newline, и это работает. Когда я использую: < /p>
$test_headers = mysqli_fetch_array(query_db("SELECT test_varchar FROM test_table WHERE test_name = 'test_columns' LIMIT 1"));

$header_list = explode(PHP_EOL, $test_headers[0]);
< /code>
Вывод в источнике страницы браузера выглядит точно так же, как исходный жесткий массив: < /p>
Array (
[0] => Symbol
[1] => Description
[2] => Qty
[3] => Price Per Share
[4] => Price Chng % (Price Change %)
[5] => Price Chng $ (Price Change $)
[6] => Market Value
[7] => Day Chng % (Day Change %)
[8] => Day Chng $ (Day Change $)
[9] => Cost Basis
[10] => Gain
[11] => Gain %
[12] => Reinvest
[13] => Reinvest Capital Gains?
[14] => Div Price
[15] => Volume
[16] => ITM

)
The hard coded array works when I use array_combine, but when I use array_combine with the DB version, it adds an extra space to before the last bracket which I think is the problem, like this:
outputting the combined array code:
$combined_row[] = array_combine($header_list, $column);

Рабочая версия
Array(
[0] => Array
(
[Symbol] => Symbol
[Description] => Description
[Qty] => Qty (Quantity)
[Price Per Share] => Price
[Price Chng % (Price Change %)] => Price Chng % (Price Change %)
[Price Chng $ (Price Change $)] => Price Chng (Price Change )
[Market Value] => Mkt Val (Market Value)
[Day Chng % (Day Change %)] => Day Chng % (Day Change %)
[Day Chng $ (Day Change $)] => Day Chng (Day Change )
[Cost Basis] => Cost Basis
[Gain] => Gain (Gain/Loss )
[Gain %] => Gain % (Gain/Loss %)
[Reinvest] => Reinvest?
[Reinvest Capital Gains?] => Reinvest Capital Gains?
[Div Price] => Last Div (Last Dividend)
[Volume] => ITM (In The Money)
[ITM] => Security Type
)

Хотя вытягивая его из DB, он отображает:
сломанный версия
HMM, по какой -то причине этот сайт не форматирует сломанную версию и позволяет мне продолжать, поэтому я должен был ее удалить. Это в основном добавляет новую линию между именем массива и кронштейном, как: < /p>
[Symbol
] => Symbol
< /code>
вместо: < /p>
[Symbol] => Symbol
< /code>
Я попытался добавить оператор Foreach для каждого массива, используя Trim () и Str_replace (php_eol, '', $ blah) к каждому значению, прежде чем отправлять его в комбинацию массива, и это не работает. Как я уже сказал, массив отлично отображается как для жесткой кодированной версии DB только после того, как Array_Combine, что версия DB сломана. Я не знаю, почему он добавляет новую линию перед последним кронштейном, и, возможно, именно поэтому FOREACH для $ COMBINED_ROW не будет работать. Есть идеи?array(17) { [0]=> string(6) "Symbol" [1]=> string(11) "Description" [2]=> string(3) "Qty" [3]=> string(15) "Price Per Share" [4]=> string(29) "Price Chng % (Price Change %)" [5]=> string(29) "Price Chng $ (Price Change $)" [6]=> string(12) "Market Value" [7]=> string(25) "Day Chng % (Day Change %)" [8]=> string(25) "Day Chng $ (Day Change $)" [9]=> string(10) "Cost Basis" [10]=> string(4) "Gain" [11]=> string(6) "Gain %" [12]=> string(8) "Reinvest" [13]=> string(23) "Reinvest Capital Gains?" [14]=> string(9) "Div Price" [15]=> string(6) "Volume" [16]=> string(3) "ITM" }
< /code>
var_dump от сломанного результата: < /p>
array(17) { [0]=> string(7) "Symbol " [1]=> string(12) "Description " [2]=> string(4) "Qty " [3]=> string(16) "Price Per Share " [4]=> string(30) "Price Chng % (Price Change %) " [5]=> string(30) "Price Chng $ (Price Change $) " [6]=> string(13) "Market Value " [7]=> string(26) "Day Chng % (Day Change %) " [8]=> string(26) "Day Chng $ (Day Change $) " [9]=> string(11) "Cost Basis " [10]=> string(5) "Gain " [11]=> string(7) "Gain % " [12]=> string(9) "Reinvest " [13]=> string(24) "Reinvest Capital Gains? " [14]=> string(10) "Div Price " [15]=> string(7) "Volume " [16]=> string(3) "ITM" }


Подробнее здесь: https://stackoverflow.com/questions/795 ... the-script
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»