Ответы пользователя по тегу PHP
  • Почему не может работать класс и методами??

    @ichubinets
    <?php
    
    class myFridge
    {
        public $x, $y;
    
        public function __construct($x, $y)
        {
            $this->x = $x;
            $this->y = $y;
        } 
    
        public function message()
        {
            return sprintf("Так, ну я люблю это: %s, %s!", $this->x, $this->y);
        }
    }
    
    echo (new myFridge("шоколад","арбуз"))->message();
    Ответ написан
    Комментировать
  • Как рекурсивно очистить массив?

    @ichubinets Автор вопроса
    Решено.

    function isJson($string) 
    {
    	return is_string($string) && is_array(json_decode($string, true)) ? true : false;
    }
    
    function array_clear($array)
    {
    	foreach ($array as $k => $v) 
    	{
    		if (is_array($v))
    		{
    			$array[$k] = array_clear($array[$k]);
    		}
    		elseif (isJson($v))
    		{
    			$array[$k] = json_encode(array_clear(json_decode($v, 1)));
    		}
    		elseif (empty($v)) 
    		{
    			unset($array[$k]);
    		}
    	}
    
    	return $array;
    }
    Ответ написан
    Комментировать
  • Почему дублируются запросы SQL?

    @ichubinets
    Не юзал DLE, но здесь, вроде, ничего сложно нет, просто поставить условие, если записей больше 0
    if ($db->num_rows($result) > 0) 
    {
        while ($row_actor = $db->get_row($result)) 
        {
            $id_actor = $row_actor['id'];
            $xf_actor = $row_actor['xfields'];
            $alt_name_actor = $row_actor['alt_name'];
        }
    }

    В лучшем варианте будет
    if ($rows = $db->get_row($result)) 
    {
        foreach($rows as $row_actor) 
        {
            $id_actor = $row_actor['id'];
            $xf_actor = $row_actor['xfields'];
            $alt_name_actor = $row_actor['alt_name'];
        }
    }
    Ответ написан
    Комментировать