За последние 24 часа нас посетили 56830 программистов и 1750 роботов. Сейчас ищут 766 программистов ...

phpExcel гипер ссылка

Тема в разделе "PHP для новичков", создана пользователем pernik, 4 июл 2016.

  1. pernik

    pernik Активный пользователь

    С нами с:
    25 дек 2010
    Сообщения:
    49
    Симпатии:
    0
    Всем привет, есть делема
    при выполнении команды
    ->getHyperlink()->getUrl();

    почему то вместе ссылкой ещё берется комент "-Для перехода по гипер ссылки ..."
    ещё и в не понятной кодировке, кто знает как от него избавится ?
     
  2. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    Файл xls, xlsx, что в исходном коде файла, нет ли там случайно этого текста
     
  3. pernik

    pernik Активный пользователь

    С нами с:
    25 дек 2010
    Сообщения:
    49
    Симпатии:
    0
    файл xls в нем текст, который имеет ссылку и описание к этой ссылке "- Для перехода по гипер ссылки ..." и ->getHyperlink()->getUrl(); берет ссылку вместе с описанием
     
  4. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    Ну если после ссылки идёт пробел например, то можешь отделить её от описания
     
  5. pernik

    pernik Активный пользователь

    С нами с:
    25 дек 2010
    Сообщения:
    49
    Симпатии:
    0
    прикол в том что даже пробел кодируется пока поставил костыль через регулярку, но это я думаю не вариант, или вариант ?
     
  6. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    вариант, есть функции в PHP которые кодировку определяют, можешь ещё и конвертировать в нормальную
     
    askanim нравится это.
  7. Morticius

    Morticius Новичок

    С нами с:
    24 июн 2016
    Сообщения:
    8
    Симпатии:
    0
    Поменяй кодировку содержимого файла с помощью iconv()
     
  8. pernik

    pernik Активный пользователь

    С нами с:
    25 дек 2010
    Сообщения:
    49
    Симпатии:
    0
    так и сделал utf-8 на win-1251 и кракозябры отпали но появился какойто лишний невидимый символ поэтому воспользывался ещё substr($string, 0, -1)
     
  9. Morticius

    Morticius Новичок

    С нами с:
    24 июн 2016
    Сообщения:
    8
    Симпатии:
    0
    Лучше посмотри откуда взялся этот символ, но не допускай этот костыль substr($string, 0, -1) в рабочий код, просто хз что за файлы у тебя еще будут, здесь ты убрал ненужный символ, а в другом файле порежешь нужную дату.
     
  10. pernik

    pernik Активный пользователь

    С нами с:
    25 дек 2010
    Сообщения:
    49
    Симпатии:
    0
    Самому не нравится поэтому сюда и пишу
    забираю из екселя вот такую http://сайт/face_info.aspx?FaceId=П-0001b-B塹ᴻ䡿ⲯ嶂藄挧ꮥ" гипер ссылку
    привожу через
    iconv('utf-8', 'Windows-1251', $url)
    к такому виду
    http://сайт/face_info.aspx?FaceId=П-0001b-B
    но тут на 1 символ больше чем кажется, поэтому и использую substr
    я уже ХЗ как норм сделать
     
  11. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    @pernik если работает с костылём, то нормально