|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
|
cppGhost |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 101 Регистрация: 24.4.2013 Репутация: нет Всего: нет |
День добрый, есть у меня переменная $arResult. и если ее вывести через print_r, то в ней будет вот такая штука. У меня никак не получается достать цену. запись типа $arResult["SUM"] или $arResult["PRICE"] не выходит. Буду благодарен за любую помощь
Array ( [0] => Array ( ) [1] => Array ( [ID] => 1 [PAY_SYSTEM_ID] => 1 [PERSON_TYPE_ID] => 1 [NAME] => Оплата наличными или картой при получении [PSA_NAME] => Оплата наличными или картой при получении [CODE] => [SORT] => 80 [ACTION_FILE] => /bitrix/modules/sale/payment/cash [RESULT_FILE] => [DESCRIPTION] => Оплата наличными при получении заказа курьеру. [NEW_WINDOW] => N [PARAMS] => [TARIF] => [PS_MODE] => [HAVE_PAYMENT] => Y [HAVE_ACTION] => N [HAVE_RESULT] => N [HAVE_PREPAY] => N [HAVE_PRICE] => N [HAVE_RESULT_RECEIVE] => N [ENCODING] => [LOGOTIP] => Array ( [ID] => 626 [TIMESTAMP_X] => 31.01.2017 22:46:37 [MODULE_ID] => sale [HEIGHT] => 48 [WIDTH] => 48 [FILE_SIZE] => 17829 [CONTENT_TYPE] => image/png [SUBDIR] => sale/paysystem/logotip/05a [FILE_NAME] => 05a74e85b6e59698705f5b2f72f43eae.png [ORIGINAL_NAME] => cash.png [DESCRIPTION] => [HANDLER_ID] => [EXTERNAL_ID] => 0931ab4535b6be4f8e70acb97f95f50c [~src] => [SRC] => /upload/sale/paysystem/logotip/05a/05a74e85b6e59698705f5b2f72f43eae.png ) [ACTIVE] => Y [ALLOW_EDIT_PAYMENT] => Y [IS_CASH] => N [AUTO_CHANGE_1C] => N [CAN_PRINT_CHECK] => N [BUFFERED_OUTPUT] => [IS_AFFORD_PDF] => [PATH_TO_ACTION] => /home/m/mboot/bitrix_4/public_html/bitrix/modules/sale/payment/cash/payment.php ) [2] => Array ( ) [3] => Array ( ) [4] => Array ( ) [5] => Array ( ) [6] => Array ( ) [7] => Array ( ) [8] => Array ( ) [9] => [10] => 0 [11] => 0 [12] => 0 [13] => 0 [14] => [15] => Array ( ) [16] => RUB [17] => кг [18] => 1000 [19] => Array ( ) [20] => 0 [21] => 0 [22] => 0 [23] => 0 [24] => [25] => [26] => [27] => [28] => [29] => [30] => [31] => [32] => [33] => [34] => [35] => Array ( ) [36] => Array ( [new_user_registration_email_confirmation] => N [new_user_registration] => Y [new_user_email_required] => N ) [37] => [38] => Array ( ) [39] => [40] => Array ( ) [41] => Array ( [DEFAULT_COLUMNS] => ) [42] => Array ( [CONFIRM_ORDER] => Y ) [43] => 736 [44] => 736 [45] => Array ( [736] => Array ( [ID] => 736 [ORDER_ID] => 736 [ACCOUNT_NUMBER] => 736/1 [PAID] => N [DATE_PAID] => [EMP_PAID_ID] => [PAY_SYSTEM_ID] => 1 [PS_STATUS] => [PS_STATUS_CODE] => [PS_INVOICE_ID] => [PS_STATUS_DESCRIPTION] => [PS_STATUS_MESSAGE] => [PS_SUM] => [PS_CURRENCY] => [PS_RESPONSE_DATE] => [PAY_VOUCHER_NUM] => [PAY_VOUCHER_DATE] => [DATE_PAY_BEFORE] => [DATE_BILL] => Bitrix\Main\Type\DateTime Object ( [value:protected] => DateTime Object ( [date] => 2018-04-04 16:23:12.000000 [timezone_type] => 3 [timezone] => Europe/Moscow ) ) [XML_ID] => [SUM] => 5900.0000 [PRICE_COD] => 0.0000 [CURRENCY] => RUB [PAY_SYSTEM_NAME] => Оплата наличными или картой при получении [RESPONSIBLE_ID] => [EMP_RESPONSIBLE_ID] => [DATE_RESPONSIBLE_ID] => [COMMENTS] => [COMPANY_ID] => 0 [PAY_RETURN_NUM] => [PAY_RETURN_DATE] => [EMP_RETURN_ID] => [PAY_RETURN_COMMENT] => [IS_RETURN] => N [MARKED] => N [DATE_MARKED] => [EMP_MARKED_ID] => [REASON_MARKED] => [UPDATED_1C] => N [ID_1C] => [VERSION_1C] => [EXTERNAL_PAYMENT] => N ) ) [46] => Array ( [1] => Array ( [ID] => 1 [PAY_SYSTEM_ID] => 1 [PERSON_TYPE_ID] => 1 [NAME] => Оплата наличными или картой при получении [PSA_NAME] => Оплата наличными или картой при получении [CODE] => [SORT] => 80 [ACTION_FILE] => /bitrix/modules/sale/payment/cash [RESULT_FILE] => [DESCRIPTION] => Оплата наличными при получении заказа курьеру. [NEW_WINDOW] => N [PARAMS] => [TARIF] => [PS_MODE] => [HAVE_PAYMENT] => Y [HAVE_ACTION] => N [HAVE_RESULT] => N [HAVE_PREPAY] => N [HAVE_PRICE] => N [HAVE_RESULT_RECEIVE] => N [ENCODING] => [LOGOTIP] => Array ( [ID] => 626 [TIMESTAMP_X] => 31.01.2017 22:46:37 [MODULE_ID] => sale [HEIGHT] => 48 [WIDTH] => 48 [FILE_SIZE] => 17829 [CONTENT_TYPE] => image/png [SUBDIR] => sale/paysystem/logotip/05a [FILE_NAME] => 05a74e85b6e59698705f5b2f72f43eae.png [ORIGINAL_NAME] => cash.png [DESCRIPTION] => [HANDLER_ID] => [EXTERNAL_ID] => 0931ab4535b6be4f8e70acb97f95f50c [~src] => [SRC] => /upload/sale/paysystem/logotip/05a/05a74e85b6e59698705f5b2f72f43eae.png ) [ACTIVE] => Y [ALLOW_EDIT_PAYMENT] => Y [IS_CASH] => N [AUTO_CHANGE_1C] => N [CAN_PRINT_CHECK] => N [BUFFERED_OUTPUT] => [IS_AFFORD_PDF] => [PATH_TO_ACTION] => /home/m/mboot/bitrix_4/public_html/bitrix/modules/sale/payment/cash/payment.php ) ) [47] => Array ( [ID] => 736 [LID] => s1 [ACCOUNT_NUMBER] => 736 [TRACKING_NUMBER] => [PAY_SYSTEM_ID] => 1 [DELIVERY_ID] => 10 [DATE_INSERT] => Bitrix\Main\Type\DateTime Object ( [value:protected] => DateTime Object ( [date] => 2018-04-04 16:23:12.000000 [timezone_type] => 3 [timezone] => Europe/Moscow ) ) [DATE_UPDATE] => Bitrix\Main\Type\DateTime Object ( [value:protected] => DateTime Object ( [date] => 2018-04-04 16:23:12.000000 [timezone_type] => 3 [timezone] => Europe/Moscow ) ) [PERSON_TYPE_ID] => 1 [USER_ID] => 1 [PAYED] => N [DATE_PAYED] => [EMP_PAYED_ID] => [DEDUCTED] => N [DATE_DEDUCTED] => [EMP_DEDUCTED_ID] => [REASON_UNDO_DEDUCTED] => [STATUS_ID] => N [DATE_STATUS] => Bitrix\Main\Type\DateTime Object ( [value:protected] => DateTime Object ( [date] => 2018-04-04 16:23:12.000000 [timezone_type] => 3 [timezone] => Europe/Moscow ) ) [EMP_STATUS_ID] => 1 [MARKED] => N [DATE_MARKED] => [EMP_MARKED_ID] => [REASON_MARKED] => [PRICE_DELIVERY] => 0.0000 [ALLOW_DELIVERY] => N [DATE_ALLOW_DELIVERY] => [EMP_ALLOW_DELIVERY_ID] => [RESERVED] => N [PRICE] => 5900.0000 [CURRENCY] => RUB [DISCOUNT_VALUE] => 0.0000 [TAX_VALUE] => 0.00 [SUM_PAID] => 0.00 [USER_DESCRIPTION] => [PAY_VOUCHER_NUM] => [PAY_VOUCHER_DATE] => [ADDITIONAL_INFO] => [COMMENTS] => [COMPANY_ID] => 0 [CREATED_BY] => 1 [RESPONSIBLE_ID] => [STAT_GID] => [DATE_PAY_BEFORE] => [DATE_BILL] => [IS_RECURRING] => N [RECURRING_ID] => [LOCKED_BY] => [DATE_LOCK] => [RECOUNT_FLAG] => Y [AFFILIATE_ID] => [DELIVERY_DOC_NUM] => [DELIVERY_DOC_DATE] => [UPDATED_1C] => N [ORDER_TOPIC] => [XML_ID] => [ID_1C] => [VERSION_1C] => [VERSION] => 0 [EXTERNAL_ORDER] => N [STORE_ID] => [CANCELED] => N [EMP_CANCELED_ID] => [DATE_CANCELED] => [REASON_CANCELED] => [BX_USER_ID] => 544371a2469e61b53b66e7d396849462 [RUNNING] => N [IS_ALLOW_PAY] => Y [PAYMENT_ID] => 736 ) ) |
|||
|
||||
whatisnot |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 130 Регистрация: 14.12.2014 Репутация: 1 Всего: 2 |
Такого [CODE] => [SORT] => 80 [ACTION_FILE] => ... в массиве быть не может, и выводить массив нужно в тег PRE, и такой результат показывать, если хотите получить ответ.
|
|||
|
||||
krundetz |
|
||||
Вечный странник Профиль Группа: Завсегдатай Сообщений: 1400 Регистрация: 14.6.2007 Где: НН(Сормово) Репутация: 20 Всего: 69 |
print_r не очень удобен, лучше воспользуйтесь функцией var_dump
а ещё лучше сделайте вот так:
а вообще какой то PRICE в массиве явно есть
|
||||
|
|||||
whatisnot |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 130 Регистрация: 14.12.2014 Репутация: 1 Всего: 2 |
||||
|
||||
cppGhost |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 101 Регистрация: 24.4.2013 Репутация: нет Всего: нет |
то есть простого обращения типа $arResult["PRICE"] нет?
|
|||
|
||||
whatisnot |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 130 Регистрация: 14.12.2014 Репутация: 1 Всего: 2 |
Если это первичный ключ массива, то можно, но если это в двадцатом колене вложенность, то кончено же нет. Вы же не пишите писем "на деревню дедушке", не дойдет, нужно будет указать имя деревни, где эта деревня, и фамилию дедушки. Это сообщение отредактировал(а) whatisnot - 4.4.2018, 20:55 |
|||
|
||||
cppGhost |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 101 Регистрация: 24.4.2013 Репутация: нет Всего: нет |
А если как то рекурсивно пробежаться по всем элементам и найти этот самый ключ SUM?
|
|||
|
||||
whatisnot |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 130 Регистрация: 14.12.2014 Репутация: 1 Всего: 2 |
Можно и рекурсивно обойти, если не знать расположение, если же известно, то просто сразу обратиться.
|
|||
|
||||
krundetz |
|
||||||||
Вечный странник Профиль Группа: Завсегдатай Сообщений: 1400 Регистрация: 14.6.2007 Где: НН(Сормово) Репутация: 20 Всего: 69 |
тем что если он содержит пустые строки, значения null и false, то структуру массива смотреть не удобно, особенно если его вывели как обычную строку
ваше же утверждение, а здесь всего лишь пустые значения и вывод в одну строку. А по вашему уже не массив. код:
вывод:
вот я вас попросил, да и whatisnot сделать форматированный вывод, потрудитесь немного, тогда получите ответ на свой вопрос |
||||||||
|
|||||||||
whatisnot |
|
||||
Шустрый Профиль Группа: Участник Сообщений: 130 Регистрация: 14.12.2014 Репутация: 1 Всего: 2 |
Вы уверены в том, что говорите? Не надо путать мух с котлетами. В чем противоречие вывода массива $str = array('1' => '', '2' => null, '3' => false, '4' => 4); посредством print_r? Нахрена мне var_dum, если мне нужно узнать структуру массива? Пусто или NULL ее никак не нарушат, и не они приводят к ошибкам [key] => [key] => ... Не пудрите мине мозги. |
||||
|
|||||
krundetz |
|
||||
Вечный странник Профиль Группа: Завсегдатай Сообщений: 1400 Регистрация: 14.6.2007 Где: НН(Сормово) Репутация: 20 Всего: 69 |
вы переоцениваете свою важность для меня
1. ругаться не хорошо 2. использовать чтобы не писать вот этого:
опять повторю что это ваши слова, не мои. Повторю ещё раз ошибки там нет и при использование print_r вывод таким быть может. Смотрите приведенный мной код. cppGhost попробуй обратится к $arResult[47]["PRICE"] и $arResult[45][736]["SUM"], но думаю тебе не помешает разобраться в том почему они у тебя хранятся под такими индексами Это сообщение отредактировал(а) krundetz - 6.4.2018, 10:38 |
||||
|
|||||
whatisnot |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 130 Регистрация: 14.12.2014 Репутация: 1 Всего: 2 |
krundetz, вы может объяснить каким образом незнание или непонимание работы функции, что приводит к таким визуальным ошибками как ключ => ключ =>, может делать автоматически функцию неудобной? var_dump вне тега pre тоже строка и она ничем не лучше print_r, ибо массив как строковое представление в любой из этих функций не дает понимания о его структуре, то бишь где есть нужный нам ключ. А именно это и нужно автору знать, чтобы понимать что предпринять. Ну будь массив в три элемента куда ни шло, но такая портянка... Чем var_dump лучше, что поможет?
Ну что за безапелляционные заявления. Это равноценно как сказать XML полный отстой, не видно типов, не смотря на то, что есть XCD. Это сообщение отредактировал(а) whatisnot - 6.4.2018, 13:21 |
|||
|
||||
krundetz |
|
||||||
Вечный странник Профиль Группа: Завсегдатай Сообщений: 1400 Регистрация: 14.6.2007 Где: НН(Сормово) Репутация: 20 Всего: 69 |
хм, это вы называете безапелляционным? именно незнание ТС предмета делает функцию print_r крайне неудобной. Он пока не разберется в предмете так и продолжит себе этой функцией пальцы прищемлять. Да и вас она в заблуждение ввела.
ваши же слова? По заявлению разработчиков
вот объясните мне как пустая строка (вместо false или null) будет удобочитаемой? Особенно новичкам, которые с собственных массивах разобраться не могут? Поэтому я и рекомендую использовать var_dump. Это сообщение отредактировал(а) krundetz - 6.4.2018, 15:41 |
||||||
|
|||||||
whatisnot |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 130 Регистрация: 14.12.2014 Репутация: 1 Всего: 2 |
krundetz, все что вы пишите философия на голом месте, мануал автору надо читать, ибо какой бы функцией не вывести портянку его массива вне тега pre, она ему ничего не подскажет. Для понимания где искать нужное, нужно видеть структур массива, а ее надо знать как выводить корректно, все ваши остальные доводы от лукавого.
|
|||
|
||||
krundetz |
|
|||
Вечный странник Профиль Группа: Завсегдатай Сообщений: 1400 Регистрация: 14.6.2007 Где: НН(Сормово) Репутация: 20 Всего: 69 |
у меня как раз обратное впечатление. Я вам аргументировал и кодом и цитатами из мануала. От вас я увидел только поток сознания. Вы не ответили ни на один мой вопрос, хотя их было несколько. Последний вопрос такой зачем мне нужна функция print_r, если все тоже самое и даже больше я получу используя var_dump или var_export? |
|||
|
||||
whatisnot |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 130 Регистрация: 14.12.2014 Репутация: 1 Всего: 2 |
Это вы себя спросите, чем удобнее var_dump, если нужно знать только структуру? Ничем. Беда автора не в том, что они использовал print_r, а в том, что он не знает как ее правильно использовать. Все остальное, это просто демагогия. |
|||
|
||||
krundetz |
|
|||
Вечный странник Профиль Группа: Завсегдатай Сообщений: 1400 Регистрация: 14.6.2007 Где: НН(Сормово) Репутация: 20 Всего: 69 |
Я вас спрашивал. Но раз вы настаиваете повторю свои аргументы за использование var_dump вместо print_r 1. вывод print_r не всегда очевиден. 2. есть аналоги с более очевидным выводом. 3. новичку легче научиться пользоваться 1-ой функцией чем 2-мя, особенно когда он толком не понимает многих особенностей языка. 4. новички используют print_r согласно мануалу для вывода удобочитаемой информации о переменной, а не только для просмотра структуры массива. Только вот есть пункт 1. Вы меня уже в чем только не обвинили, и в философии на голом месте, и в том что я вам пудрю мозги, и в том что путаю мух с котлетами, и в том что доводы у меня от лукавого, теперь вот в демагоги записали. Может лучше аргументы за print_r приводить будете, или контраргументы для var_dump? |
|||
|
||||
whatisnot |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 130 Регистрация: 14.12.2014 Репутация: 1 Всего: 2 |
Опять демагогии на целый том. Вы чем забиваете гвозди, надеюсь молотком, а не пневмомолот? Товарищу просто надо знать как правильно структуру массива отобразить, и это все. Я никоим образом не против функции var_dump, а просто не понимаю когда делают заявления, которые по сути к проблеме отношения не имеют.
|
|||
|
||||
krundetz |
|
|||
Вечный странник Профиль Группа: Завсегдатай Сообщений: 1400 Регистрация: 14.6.2007 Где: НН(Сормово) Репутация: 20 Всего: 69 |
1. Я подсказал ТС вариант который считаю оптимальным для решения его проблем 2. Я по вашей замечу просьбе несколько раз обосновал свою точку зрения 3. Вас она видимо не устраивает, но аргументов вы не приводите 4. Зато пишите куча обвинений в мой адрес уж точно не по сути проблемы 5. Если вы что то не понимаете то ЭТО ВАШИ ПРОБЛЕМЫ Внимательный читатель выводы сделает. На этом нашу дискуссию считаю закрытой. |
|||
|
||||
whatisnot |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 130 Регистрация: 14.12.2014 Репутация: 1 Всего: 2 |
Было бы что читать Я ведь не потому написал, чтобы уколоть, а потому, что замечание о неудобности было не к месту. Это как рассуждать о жизни на Марсе, когда этого не требуется.
И согласен, это пустой разговор - PRE -> функция, все что надо было, а уж какая из них не суть важно. Это сообщение отредактировал(а) whatisnot - 10.4.2018, 14:12 |
|||
|
||||
_zorn_ |
|
|||
Эксперт Профиль Группа: Завсегдатай Сообщений: 1077 Регистрация: 21.8.2007 Репутация: 6 Всего: 12 |
В плюс к предыдущему оратору - var_dump например дампит стримом, а print_r сначала в памяти собирает.
Чем это грозит ? Если в браузер "вардампнишь" объект с НЕОЧЕВИДНЫМИ рекурсивными ссылками - пиши пропало, считай комп надо перезагружать. print_r же просто ругнется на нехватку памяти (если конечно memory_limit выставлен) Ну для проверки можете дампнуть какой нибудь Entity доктриновский Это все при условии что на локальном компе разработка идет (php -S). За сервак я боюсь отвечать при таких условиях ) Это сообщение отредактировал(а) _zorn_ - 10.4.2018, 15:52 |
|||
|
||||
krundetz |
|
|||
Вечный странник Профиль Группа: Завсегдатай Сообщений: 1400 Регистрация: 14.6.2007 Где: НН(Сормово) Репутация: 20 Всего: 69 |
1. интересная информация, вот ради этого и велась вся полемика с whatisnot. 2. с таким поведением не сталкивался, возможно из-за xdebug, он вроде регулирует поведение var_dump 3. можно пруф на подробное описание, а то что то google ничего не выдает |
|||
|
||||
whatisnot |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 130 Регистрация: 14.12.2014 Репутация: 1 Всего: 2 |
Полемика непонятная. Можно долго говорить о достоинствах или недостатках чего-то, это одно и имеет место быть в рамках как раз отвлеченной полемики. Подвергать же критике одно, говоря о достоинствах другого в контексте когда ни одно из этого не применяется по назначению (как следует), это уже не полемика, а болтовня. Обе этих функции предполагают форматированный вывод, поэтому в них содержится код перевода строки и пробелы для отступов, при этом var_dump использует два пробела на один уровень, а print_r четыре. Если бы вывод данных функций производился в Блокнот, тогда бы и разговоров не было. Но в данном случае все в контексте веб, блокнотом является браузер, и это не текст, а html, а перевод строки в нем трактуется как пробел. Это нужно знать и понимать, тогда еще до вывода знаем, что получим не то, чего хочется, и не важно какую функцию будем использовать. Задачей является вычисление "адреса", а в потоке строки вычислить его сложно, хотя и можно. На каком основании при этом можно утверждать, что одно лучше или хуже другого? Тут ведь ошибка не в применении "нужной" функции, а в представлении результата работы функции, который не дает ответа на вопрос - "где живет адресат?". Это ведь абсурдно, также, как если бы перемешать дома какого либо квартала, и поэтому не найдя в нем нужного дома, утверждать, что если бы перемешивали против часовой стрелки, то было бы лучше. Если же говорить отвлеченно, то даже в этом случае некорректно утверждать, что одна функция лучше другой, просто каждая из них выполняет то, что ей и предписано. Print_r удобнее для представления структуры хотя бы уже потому, что четыре пробела на отступ, а это табуляция по умолчанию, и стилем расстановки фигурных скобок. Var_dump к тому же выводит типы с переносом на новую строку, что несколько осложняет восприятие структуры массива. В силу того, что print_r использует память ее вывод можно перехватить в переменную, что можно использовать для простой отладки в ajax-запросах. При этом если для просмотра используется alert, то достаточно просто echo print_r(array, 1), но и не проблема добавить в строку и тег pre. Но если нужно просмотреть типы в массиве, то только глупец может утверждать, что print_r для этого удобнее, ибо она просто не делает этого. А это об иной функции, хотя если развести полемику ненужную, то также можно говорить долго, доказывая, что одно лучше/хуже другого. Это не редко наблюдаемое явление - $row = ...fetch_array($result) без указания того, что нужно, хотя используется только ассоциативный набор. Это при том, что есть и fetch_assoc(). И такая банальная привычка приводит к банальным ошибкам, над которыми героически борются на клиенте, вместо того, чтобы использовать грамотно fetch_array() или же вместо нее fetch_assoc(). Но можно ли в этом случае утверждать, что fetch_array() неудобная функция? Утверждать конечно же можно, но только если ради рассмешить ежика. Матчасть изучать надо, вот в чем суть, а полемизировать в таких случаях вредно, ибо это может утвердить в сознании начинающего неверное представление или даже пагубное убеждение. В этом была суть моего вопроса - чем одно, лучше другого. Это сообщение отредактировал(а) whatisnot - 12.4.2018, 10:27 |
|||
|
||||
krundetz |
|
|||
Вечный странник Профиль Группа: Завсегдатай Сообщений: 1400 Регистрация: 14.6.2007 Где: НН(Сормово) Репутация: 20 Всего: 69 |
||||
|
||||
whatisnot |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 130 Регистрация: 14.12.2014 Репутация: 1 Всего: 2 |
Да, но это если ради полемики, говоря о каких-то достоинствах/возможностях функции, а в контексте не надлежащего ее использования, это не имеет никого значения. Тут нет подвоха - alert выводит текст как есть, то есть, если в тексте есть перевод строки, то будет вывод в новую строку, и учитываются все пробелы, поэтому достаточно просто вывести результат функции. Но если, к примеру, в клиентском сценарии ответ сервера выводить на страницу, то будет тоже самое, что и у автора поста, поэтому и требуется обрамлять тегом PRE, а чтобы не делать добавок ради этого в клиентском сценарии, это же мелкая отладка, то выгоднее это сделать на сервере. PS. Кстати, может попадалось на глаза такое чудо, когда производят вывод в браузер так?
Видимо тоже надеются, что увидят красоту в нем. А такими примерами изобилует и руководство РНР на официальном сайте, и хоть бы для приличия тег PRE был упомянут, ан нет, вот и растут ноги проблем всяких, а читать же лень. ) Это сообщение отредактировал(а) whatisnot - 12.4.2018, 20:39 |
|||
|
||||
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |