PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (1): [1]

> Найдено сообщений: 12
Abyrvalg Отправлено: 12 Июля, 2019 - 19:13:08 • Тема: Как подружиться с MS SQL • Форум: Работа с СУБД

Ответов: 6
Просмотров: 2113
andrewkard пишет:
Проще всего поставить фреймворк типа Yii2, laravel


Приложение на несколько десятков строк, громоздить ради него какой-то фреймворк очень не хочется.

andrewkard пишет:
развернуть в ВМ (виртуальная машина) FreeBSD, и на ней установить MS SQL сервер, установить коннекты и проводить разработку


Боевая ситуация - это сервер MS SQL на серверной Винде и PHP-скрипт на FreeBSD.
Abyrvalg Отправлено: 12 Июля, 2019 - 16:36:47 • Тема: Как подружиться с MS SQL • Форум: Работа с СУБД

Ответов: 6
Просмотров: 2113
Привет уважаемому All!

Подскажите, пожалуйста, каков сейчас наиболее штатный и безгеморройный способ общения эхотага с MS SQL. Притом кроссплатформенный.

Поясню суть вопроса. Есть сервак на FreeBSD (да, даже не на Линухе). Там крутится PHP 7.3, именно на этот сервак надо деплоить приложения. И есть рабочая станция Windows 7 x86, на ней среда разработки. Так вот, я столкнулся с необходимостью разработки несложного приложения, которое должно общаться с MS SQL Server. Попытался с ходу разобраться в теме, но столкнулся с ужасом. Если с MySQL всё штатно и из коробки, то с MS SQL - какое-то дикое крошево разных вариантов, и каждый из них работает после специальных плясок с бубном, а уж про кроссплатформенность и говорить нечего...

Или я где-то не докопал? Подскажите, братцы.
Abyrvalg Отправлено: 14 Апреля, 2018 - 23:25:52 • Тема: Анализ текстов на схожесть • Форум: Программирование на PHP

Ответов: 0
Просмотров: 629
Привет тебе, великий All!

Задам вопрос, может быть, тривиальный. А может, наоборот, из области фантастики. Тебе видней.

Предположим, у нас имеется 100 текстов на русском языке. Стоит задача провести их анализ и в итоге получить следующую инфу:
* Какие тексты, скорее всего, посвящены одной и той же теме (событию, явлению).
* Список ключевых слов, связанных с этими темами.

Что это? Как это делается? Есть ли какие-то готовые алгоритмы, проекты, библиотеки?
Abyrvalg Отправлено: 14 Мая, 2012 - 23:36:23 • Тема: Константы в классах • Форум: Объектно-ориентированное программирование

Ответов: 0
Просмотров: 817
Привет тебе, несокрушимый All!

Возникла проблема, на которой я с ходу затупил.
Предположим, есть некий абстрактный класс, у которого существует несколько конкретных классов-реализаций. Предположим также, что абстрактный класс имеет некое свойство, которое наследуется потомками. Это свойство уникально для каждого класса. Ну, например, объявляем абстрактный класс AbstractClass с неким свойством UserType, по умолчанию равным нулю (значения это не имеет, класс-то абстрактный), а дальше объявляем классы ConcreteClass1 и ConcreteClass2. У первого свойство UserType будет равно 1, а у второго - 2.
Казалось бы, проблем тут никаких нет. Можно объявить это свойство как публичную переменную. Можно - как приватную, со специально приделанным методом типа getUserType(). А можно вовсе константу, которая будет иметь своё значение для каждого класса. Это представляется наиболее логичным.

Но есть два условия, которые портят всю малину.

1) К свойству UserType надо обращаться без привязки к созданию соответствующего объекта.
То есть, UserType должен быть константой класса или, по крайней мере, статическим членом класса.

2) Заранее не известно, какая именно реализация абстрактного предка будет использоваться.
То есть, имя предназначенного для использования конкретного класса будет, к примеру, сидеть в какой-нибудь переменной.

И вот тут в PHP 5.2.x мы наступаем на развесистые грабли. Он напрочь не понимает синтаксис вида:

или


Попытки выкрутиться с помощью статических же методов наталкиваются на дополнительные грабли в виде отсутствия т.н. "позднего статического связывания" (короче, метод берёт то значение константы, которое определено в предке, а не в данном классе).

В общем, в PHP 5.3 все эти проблемы решены, всё в шоколаде. Но по ряду вполне обыденных причин (привязка к конкретному хостингу и невозможность изменить на нём софт) я вынужден работать с 5.2.

Что присоветуете? Наверняка ведь где-то есть простой и доступный способ обойти грабли, а я протупил...
Abyrvalg Отправлено: 07 Октября, 2011 - 23:33:50 • Тема: Хранение файлов классов • Форум: Вопросы новичков

Ответов: 3
Просмотров: 220
Привет тебе, о великий All!

Хочу задать тебе один ламерский вопрос. Вот есть у тебя наверняка куча самодельных классов и библиотек, доведённых до совершенство и заточенных под широкий круг задач. Наверняка эти классы выстраиваются в определённую иерархию, систему отношений и взаимозависимостей. Класс Y наследуется от X и зависит от Z, что-нибудь в этом духе.
Скажи, как ты раскидываешь эти классы по файлам и папкам. Сваливаешь ли в одну кучу, ориентируясь на имена файлов, или используешь каталоги для сортировки? Используешь ли какие-нибудь хитрости в __autoload или ограничиваешься самой простой её реализацией?
Я потому этими вопросами задаюсь, что хочу с самого начала иметь в коде худо-бедно адекватный порядок. Потому что чем дольше код будет разрастаться в бардаке, тем тяжелее потом разгребать...
Abyrvalg Отправлено: 06 Сентября, 2011 - 08:03:31 • Тема: Многомерный массив • Форум: Вопросы новичков

Ответов: 5
Просмотров: 293
Большое спасибо! Жаль, я думал, что-нибудь встроенное есть Улыбка
Abyrvalg Отправлено: 05 Сентября, 2011 - 22:18:14 • Тема: Многомерный массив • Форум: Вопросы новичков

Ответов: 5
Просмотров: 293
Привет тебе, о непобедимый All!

Есть массив примерно такого вида:
CODE (text):
скопировать код в буфер обмена
  1. $arr[0]['x'] = 1;
  2. $src[0]['y'] = 2;
  3. $src[0]['z'] = 3;
  4. $src[1]['x'] = 4;
  5. $src[1]['y'] = 5;
  6. $src[1]['z'] = 6;
  7. $src[2]['x'] = 7;
  8. $src[2]['y'] = 8;
  9. $src[2]['z'] = 9;

Есть ли возможность штатными средствами выделить все элементы с ключом 'x'? Т.е. получить на выходе массив:
CODE (text):
скопировать код в буфер обмена
  1. $res[0] = 1;
  2. $res[1] = 4;
  3. $res[2] = 7;

Понятно, что можно написать функцию и всё такое, но может я велосипед изобретаю... Улыбка
Abyrvalg Отправлено: 24 Июня, 2011 - 16:19:28 • Тема: Получить файл вместе с HTTP-заголовками • Форум: Работа с сетью

Ответов: 8
Просмотров: 2146
Вот я слепил директиву Alias в .htaccess, и она меня перебрасывает на domain1.com (основной сайт).
А если надо править свойства виртуального хоста (т.е. внутри секции VirtualHost), то кто ж мне такое даст...
Abyrvalg Отправлено: 24 Июня, 2011 - 15:57:11 • Тема: Получить файл вместе с HTTP-заголовками • Форум: Работа с сетью

Ответов: 8
Просмотров: 2146
А какой URL при этом будет отображаться в адресной строке? С domain2.com или с domain1.com?
Abyrvalg Отправлено: 24 Июня, 2011 - 15:38:49 • Тема: Получить файл вместе с HTTP-заголовками • Форум: Работа с сетью

Ответов: 8
Просмотров: 2146
EuGen пишет:
Можно и так, только зачем? Можно гораздо проще. mod-rewrite какой-нибудь.


Дабы не плодить оффтоп, написал в личку. Сорри Улыбка
Abyrvalg Отправлено: 24 Июня, 2011 - 14:32:04 • Тема: Получить файл вместе с HTTP-заголовками • Форум: Работа с сетью

Ответов: 8
Просмотров: 2146
Спасибо, вроде всё доступно.

А не пробовал ли кто с помощью таких скриптов делать зеркала сайтов? Ну, к примеру, есть домен 1, на котором реально крутится сайт, и домен 2 (пустой). На хостинге домена 2 в .htaccess прописываем перенаправление типа:
Цитата:
ErrorDocument 404 /404.php

и в указанном скрипте обрабатываем все запросы на несуществующие файлы, подгружая вместо них реальные аналоги с сайта 1. По идее должно ведь такое сработать?
Abyrvalg Отправлено: 24 Июня, 2011 - 11:43:42 • Тема: Получить файл вместе с HTTP-заголовками • Форум: Работа с сетью

Ответов: 8
Просмотров: 2146
Привет тебе, о несравненный All!

Есть, наверное, несложная задачка, в которой я затупил.
Надо получить по HTTP файл. Притом желательно одновременно с этим выяснить, какой Content-Type ему приписывает сервер-отправитель.

Для получения файла есть замечательная функция file_get_contents.
Для получения заголовков есть не менее замечательная функция get_headers.
Первая функция получает только содержимое файла и ничего не говорит о заголовках. Вторая функция получает только заголовки, но не файл. Но мне надо и то, и другое.

Как быть?

Перспектива изобретать велосипед путём обращения к серверу через сокет и парсинга сырых ответов как-то не радует.
Вызывать поочерёдно обе функции - заманчивый выход, но кривой. Вполне прокатит, если с помощью скрипта нужно получить 5-10 файлов. А если раз в тысячу больше? Ведь HTTP-запросов будет ровно в два раза больше, чем нужно, поскольку для получения каждого файла придётся отправлять два запроса.

Есть ли простое решение этой проблемы?

Страниц (1): [1]
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB