PHP.SU

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

Страниц (14): « 1 2 3 [4] 5 6 7 8 9 ... » В конец

> Найдено сообщений: 198
qtk Отправлено: 26 Февраля, 2014 - 14:50:19 • Тема: Как решить задачу с заменой • Форум: Вопросы новичков

Ответов: 9
Просмотров: 301
PHP:
скопировать код в буфер обмена
  1. mysql_connect("mysql_host", "mysql_user", "mysql_password");
  2. mysql_select_db("my_database");
  3. $query = "SELECT * FROM my_table";
  4. $result = mysql_query($query);
  5. while ($arr = mysql_fetch_array($result))
  6. {
  7.     $value = $arr['colLink'];
  8.     if(preg_match('#((http(s?):\/\/)|(www\.)SITE.RU\/)([A-Za-zА-Яа-я0-9\.\/\=\+\-\_\?\&\%\#\~\*\:]+)#i',$value))
  9.     {
  10.         preg_match_all('#((http(s?):\/\/)|(www\.)SITE.RU\/)([A-Za-zА-Яа-я0-9\.\/\=\+\-\_\?\&\%\#\~\*\:]+)#i',$value,$links);
  11.         foreach($links[0] as $data)
  12.         {
  13.             $links=str_replace('&','&',$links);
  14.             $data=trim($data,"\x00..\x1F");
  15.             $value=str_replace($data,'http://newLink',$value);
  16.         }
  17.     }        
  18.     $q = "UPDATE my_table SET colLink = $value";
  19.     mysql_query($q);
  20. }
  21.  
qtk Отправлено: 26 Февраля, 2014 - 14:11:35 • Тема: Не нарушится ли концепция ООП • Форум: Объектно-ориентированное программирование

Ответов: 5
Просмотров: 1366
Всем спасибо за ответы!
qtk Отправлено: 26 Февраля, 2014 - 14:09:18 • Тема: Как решить задачу с заменой • Форум: Вопросы новичков

Ответов: 9
Просмотров: 301
Вечером, после работы. А в остальном понятно как реализовать?
(Добавление)
PHP:
скопировать код в буфер обмена
  1.  
  2. if(preg_match('#((http(s?):\/\/)|(www\.))([A-Za-zА-Яа-я0-9\.\/\=\+\-\_\?\&\%\#\~\*\:]+)#i',$value))
  3. {
  4.         preg_match_all('#((http(s?):\/\/)|(www\.))([A-Za-zА-Яа-я0-9\.\/\=\+\-\_\?\&\%\#\~\*\:]+)#i',$value,$links);
  5.         foreach($links[0] as $data)
  6.         {
  7.                 $links=str_replace('&','&',$links);
  8.                 $data=trim($data,"\x00..\x1F");
  9.                 $value=str_replace($data,'http://newLink',$value);
  10.         }
  11. }        
  12.     echo $value;
  13.  
qtk Отправлено: 26 Февраля, 2014 - 13:26:15 • Тема: Как решить задачу с заменой • Форум: Вопросы новичков

Ответов: 9
Просмотров: 301
Тогда пишите регулярку, которая выберет все ссылки и затем через цикл заменяете через str_replace
qtk Отправлено: 26 Февраля, 2014 - 13:05:35 • Тема: Не нарушится ли концепция ООП • Форум: Объектно-ориентированное программирование

Ответов: 5
Просмотров: 1366
Нет, у меня все проще.
Можно ли присваивать переменной значение которое вернет функция?

Можно ли использовать в качестве аргумента другую функцию?

Сет и гет можно заменить на А и В
qtk Отправлено: 26 Февраля, 2014 - 12:57:37 • Тема: Как решить задачу с заменой • Форум: Вопросы новичков

Ответов: 9
Просмотров: 301
А ссылки хронятся в базе данных? В отдельной колонке?
qtk Отправлено: 26 Февраля, 2014 - 12:38:33 • Тема: Не нарушится ли концепция ООП • Форум: Объектно-ориентированное программирование

Ответов: 5
Просмотров: 1366
Можно ли так делать, с точки зрения соблюдения концепции ооп
Присваивать переменной значение которое вернет функция
Использовать в качестве аргумента другую функцию
Я знаю что это будет работать, но интересно правильно ли это?
qtk Отправлено: 22 Января, 2014 - 18:49:20 • Тема: Особенности модели в MVC • Форум: Объектно-ориентированное программирование

Ответов: 5
Просмотров: 1325
Спасибо!
qtk Отправлено: 22 Января, 2014 - 15:34:47 • Тема: Особенности модели в MVC • Форум: Объектно-ориентированное программирование

Ответов: 5
Просмотров: 1325
Как-то разплывчато звучит. К примеру маленькое приложение и не использует фреймворк. Меня интересует правильность архитектуры моделей.
qtk Отправлено: 22 Января, 2014 - 10:27:37 • Тема: Особенности модели в MVC • Форум: Объектно-ориентированное программирование

Ответов: 5
Просмотров: 1325
Модель создается для каждого приложения своя или должна уметь работать с несколькими приложениями? К примеру модель добавления объявлений в базу должна так же уметь добавлять новости? Типо такая общая модель для добавления всего текста в базу.
qtk Отправлено: 24 Декабря, 2013 - 09:42:07 • Тема: Можно-ли в $_GET передать int или float • Форум: Вопросы новичков

Ответов: 2
Просмотров: 250
Спасибо!
qtk Отправлено: 23 Декабря, 2013 - 17:42:04 • Тема: Можно-ли в $_GET передать int или float • Форум: Вопросы новичков

Ответов: 2
Просмотров: 250
Возможно глупый вопрос, можно-ли передавать тип int и float в $_GET? Т.к. даже если передавать 1 в переменной приходит она с типом string
qtk Отправлено: 17 Декабря, 2013 - 09:57:13 • Тема: Поочередная замена значенний массива • Форум: Вопросы новичков

Ответов: 9
Просмотров: 342
Не в коем случае не хотел ни кого обидеть. Вот пример
PHP:
скопировать код в буфер обмена
  1.  
  2. $arg = array('text1', 123, 'text2 *');
  3. $sql = 'SELECT * FROM ?s WHERE id= ?i and text=?s';
  4. preg_match_all('#\?[sifanb]{1}#', $sql, $format);
  5. if(count($arg) === count($format[0]))
  6. {
  7.     for($i = 0; $i < count($arg); $i++)
  8.     {
  9.         if($format[0][$i] == '?s' and !is_string($arg[$i])) die('no str ');
  10.         elseif($format[0][$i] == '?i' and !is_int($arg[$i])) die('no int ');
  11.         else $b = TRUE;
  12.     }
  13.     if($b === TRUE)
  14.     {
  15.         //Тут какой-то код замены в строке
  16.     }
  17.     echo $sql;
  18. }
  19.  

Прошу код не комментировать это так быстрые наброски
qtk Отправлено: 17 Декабря, 2013 - 08:12:44 • Тема: Поочередная замена значенний массива • Форум: Вопросы новичков

Ответов: 9
Просмотров: 342
Invert пишет:
Проще всего:

PHP:
скопировать код в буфер обмена
  1.  
  2. $string = str_replace(
  3.     array( '%a%', '%b%', '%c%' ),
  4.     array( 'A', 'B', 'C' ),
  5.     'Это %a% просто %b% строка %c%'
  6. );
  7.  

Не проще, так как модификаторы повторяются и однотипные заменяется все одним значением, а не в соответствии с массивом.
qtk Отправлено: 17 Декабря, 2013 - 06:36:30 • Тема: Поочередная замена значенний массива • Форум: Вопросы новичков

Ответов: 9
Просмотров: 342
В принципе я изначально не правильно сформулировал вопрос. Нужно не массив на массив заменить, а элементы в строке, согласно порядку массива.
(Добавление)
EuGen пишет:
PHP:
скопировать код в буфер обмена
  1. $str = 'тут текст %s, а тут число %i и снова текст %s';
  2. $arr1 = array('%s', '%i', '%s');
  3. $arr2 = array('трололо', 123, 'ололо');
  4. $i    = 0;
  5.  
  6. $result = array_reduce($arr1, function($current, $item) use ($arr2, &$i)
  7. {
  8.    return $current = preg_replace('/'.preg_quote($item).'/', $arr2[$i++], $current, 1);
  9. }, $str);
  10.  
  11. //var_dump($result);

?

Думую код работает, но постораюсь найти решение попроще.

Страниц (14): « 1 2 3 [4] 5 6 7 8 9 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB