Форумы портала PHP.SU » » Объектно-ориентированное программирование » Кто поможет с кавычками?

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

1. Solomon - 12 Апреля, 2018 - 21:05:20 - перейти к сообщению
Здравствуйте!Возникла такая проблема,при написании ядра сайта.
Есть строка id,login,мне нужно,чтобы в конечном итоге было так `id`,`login`
Пробовал так,но не идет
PHP:
скопировать код в буфер обмена
  1.  
  2. private static function where($fields,$value) {
  3.                 if ((strpos(self::$fields, "id")) !== false) {
  4.                         self::$fields = implode('`, `', explode(',', self::$fields));
  5.                         $value = (int) self::$value;
  6.                         $value = "'".$value."'";
  7.                         $request = "WHERE ".self::$fields." = ".$value;
  8.                 }
  9.  
2. andrewkard - 14 Апреля, 2018 - 14:09:58 - перейти к сообщению
Статические методы и свойства использовать повсеместно не советую, крайне неудобно потом.
Кроме того рекомендую посмотреть в сторону подготовленных выражений, напр. ПДО, иначе у Вас могут быть дыры.

PHP:
скопировать код в буфер обмена
  1.  
  2. class Test{
  3.     public static function where($field, $value) {
  4.         $request = '';
  5.  
  6.         if ($field == 'id') {
  7.             $field = '`'.$field.'`';
  8.             $request = $field . " = " . (int)$value;
  9.         }
  10.  
  11.         return $request;
  12.     }
  13. }
  14.  
3. Vladimir Kheifets - 14 Апреля, 2018 - 14:45:32 - перейти к сообщению
Solomon пишет:
Здравствуйте!Возникла такая проблема,при написании ядра сайта.
Есть строка id,login,мне нужно,чтобы в конечном итоге было так `id`,`login`

Добрый день! Я воздержусь от комментариев по поводу OOР и отвечу на Ваш вопрос:
PHP:
скопировать код в буфер обмена
  1. $fields="id,login";
  2. $fields = '`'.implode('`, `', explode(',', $fields)).'`';
  3. echo $fields;
  4. /*
  5. //Результат:
  6. `id`, `login`
  7. */

Удачи!

 

Powered by ExBB FM 1.0 RC1