$companyEmployees = $entityManager
->createQueryBuilder()
->where('companyId = :company')
->where('active = true')
->fetchCollection();
interface CompanyRepository {
public function getActiveEmployees(): array;
}
class DoctrineCompanyRepository implements CompanyRepository {
public function getActiveEmployees()
{
return $entityManager
->createQueryBuilder()
->where('companyId = :company')
->where('active = true')
->fetchCollection();
}
}
class EloquentCompanyRepository implements CompanyRepository {
public function getActiveEmployees()
{
return Company::where()->where()->get();
}
}
class MockCompanyRepository implements CompanyRepository {
public function getActiveEmployees()
{
return [new Employee($name, $position), new Employee($name2, $position2)];
}
}
class SqlCompanyRepository implements CompanyRepository {
public function getActiveEmployees()
{
return Db::query('select * from company_employees t where t.company_id = :id and ...')->fetchAll();
}
}
class CompanyController
{
public function fireAllAction()
{
$companyService = new CompanyService(new DoctrineCompanyRepository());
...
}
}
class CompanyServiceTest
{
public function testFireAllMethod()
{
$companyService = new CompanyService(new MockCompanyRepository());
}
}
$id = 123;
echo '<pre>';
var_dump($_GET);
echo '</pre>';
if(isset($_GET['row']) && is_array($_GET['row']))
{
foreach($_GET['row'] as $row_id => $data)
{
echo "update table set price = {$data['price']}, name = '{$data['name']}' where id = {$row_id}<br>";
}
}
echo "<form>
<input type='number' name='row[{$id}][price]' placeholder='price'>
<input type='text' name='row[{$id}][name]' placeholder='name'>
<input type='submit'>
</form>";
namespace ABC {
//этот класс должен быть внутри ABC
class A {
public static function nspc()
{
return __NAMESPACE__;
}
}
}
namespace {
//а этот класс должен быть глобальным
class B {
public static function nspc()
{
return __NAMESPACE__;
}
}
class C extends ABC\A {
}
echo ABC\A::nspc();
echo '<br>----------------<br>';
echo B::nspc();
echo '<br>----------------<br>';
echo C::nspc();
}
Но как показала практика, это не работает когда передается время 20:59
$advanceDeliveryDate="20:59 05/06/2018";
$order_date = DateTime::createFromFormat('H:i d/m/Y', $advanceDeliveryDate);
$minutes = $order_date->format('i');
if ($minutes % 5)
{
$add = 5 - ($minutes % 5);
$order_date->modify("+{$add} minutes");
}
var_dump($order_date);
$input = <<<EOL
Добрый вечер. Нужно написать функцию, которая считает количество слов в предложении и букв в слове.
Например: я иду в кино, кто со мной? (1-2, 2-1, 3-2, и тд) т.е. по 1 символу 2 слова (я,в), по 3 символа 2 слова(иду, кто) и в таком ключе.
Нашел некоторый код:
EOL;
$input = str_replace(["\n", "\r"], ' ', $input);
$words = explode(' ', $input);
$len = [];
$reg = '/^[^А-Яа-я]*([А-Яа-я]|[А-Яа-я]+.*[А-Яа-я]+)[^А-Яа-я]*$/';
$callback = function(array $m) use (&$len)
{
$length = mb_strlen($m[1]);
$len[$length][] = $m[1];
return '';
};
$words = preg_replace_callback($reg, $callback, $words);
var_dump($len);
$text =<<<EOL
<g id="L-14-st-230" display="inline" opacity="1">
<text transform="matrix(1 0 0 1 226.6597 827.2749)" enable-background="new "><tspan x="0" y="0" fill="#191919" font-family="'PTSans-Regular'" font-size="16">Деловой центр</tspan><tspan x="31.6" y="14" fill="#191919" font-family="'PTSans-Regular'" font-size="16">(МЦК)</tspan></text>
</g>
<g id="L-14-st-228" display="inline" opacity="1">
<text transform="matrix(1 0 0 1 444.9458 1066.8765)" fill="#191919" font-family="'PTSans-Regular'" font-size="16">Лужники</text>
</g>
EOL;
$text = str_replace('</text>', '</text>|||', $text);
$text = strip_tags($text);
$lines = explode('|||', $text);
foreach($lines as $key => &$line)
{
$line = trim($line);
if(empty($line))
unset($lines[$key]);
}
var_dump($lines);
$keywords = ['Canon', 'Nikon'];
$text = 'Для обычного потребителя всегда была весьма сложной задачей выбрать между <span>Canon</span> и <span>Nikon</span>, потому как ...';
$wrapped_keywords = array_map(function($el){ return "<span>{$el}</span>"; }, $keywords);
$text = str_replace($wrapped_keywords, $keywords, $text);
$text = str_replace($keywords, $wrapped_keywords, $text);