<MyRusakov.ru />

Создание крупного проекта на Java с нуля

Создание крупного проекта на Java с нуля

Данный курс научит Вас создавать крупные проекты на Java грамотно и быстро. В курсе Вы увидите создание большой и сложной программы на Java абсолютно с нуля.

В начале курса у нас будет только идея, а в конце готовый продукт, который можно использовать в практических целях.

В рамках упражнений курса Вы параллельно со мной будете создавать свою большую программу на Java, что даст Вам необходимую практику, после которой для Вас уже не будет разницы, какого размера создавать программы.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Форум сайта MyRusakov.ru

Обсуждение по решению задач курса PHP и MySQL с Нуля до Гуру 2.0
14.01.2019 19:31:28 Обсуждение по решению задач курса PHP и MySQL с Нуля до Гуру 2.0 Сообщение #1
John Doe

John Doe

Освоившийся

Освоившийся

Дата регистрации:
14.01.2019 19:23:31

Сообщений: 36

ashifin
По заданию к 7 уроку по основам php/ "Откройте текстовый файл в «Блокноте» или любом другом редакторе с помощью скрипта на PHP."
Тоже как то не понял вопрос, нашел решение через массивы, но как бы ведь это 7 урок только!))
Возможно нужно покапать справочник и найти функцию.


Нашел в справочнике в расширениях для работы с системой..
В уроке как раз про это говорилось на примере `date`.

В общем, моё решение:
- предварительно создайте файл txt рядом файлом скрипта, чтобы с путём не заморачиваться.
- далее напишите следующий код:
$file = 'myfile.txt';
echo exec($file);
Профиль Ответить
16.01.2019 23:36:11 Обсуждение по решению задач курса PHP и MySQL с Нуля до Гуру 2.0 Сообщение #2
John Doe

John Doe

Освоившийся

Освоившийся

Дата регистрации:
14.01.2019 19:23:31

Сообщений: 36

Задача №14

Кто как решил?

Моё решение:

$staff = [
[
'name' => 'Петя',
'age' => 22
],
[
'name' => 'Вася',
'age' => 27
],
[
'name' => 'Коля',
'age' => 25
]
];

$sumAge = 0;

foreach ($staff as $value) {
$sumAge += $value['age'];
}

$sAge = $sumAge / 2;

echo 'Средний возраст сотрудников: ' . $sAge;
Профиль Ответить
20.01.2019 05:39:54 Обсуждение по решению задач курса PHP и MySQL с Нуля до Гуру 2.0 Сообщение #3
John Doe

John Doe

Освоившийся

Освоившийся

Дата регистрации:
14.01.2019 19:23:31

Сообщений: 36

Моё решение 19 задачи (насколько я понял условие):

$sum = function($a, $b)
{
return $a + $b;
};

//echo $sum(5, 10);

function test(array $arr, $func)
{
if(count($arr)%2 != 0) return;
foreach ($arr as $v) {
if(!is_numeric($v)) return;
}
for($i = 0; $i < count($arr); $i++) {
if($i % 2 == 0) $a = $arr[$i];
else {
$b = $arr[$i];
echo $func($a, $b) . ', ';
}
}
}

$arr = [1,2,3,4,5,'0'];
test($arr, $sum); //3, 7, 5,
Профиль Ответить
21.01.2019 00:49:47 Обсуждение по решению задач курса PHP и MySQL с Нуля до Гуру 2.0 Сообщение #4
John Doe

John Doe

Освоившийся

Освоившийся

Дата регистрации:
14.01.2019 19:23:31

Сообщений: 36

20-я задача, вроде несложная.

/**
* @param $arr2d2 - двумерный числовой массив
* @param $averArr - анонимная функция
* @return Generator - передающий внутренний массив для вычисления
*/
function gener($arr2d2, $averArr)
{
foreach ($arr2d2 as $v) yield $averArr($v);
}

//двумерный числовой массив
$arr2d2 =[
[1,2,3,4,5],
[6,7,8,9,10]
];

//запускаем генератор
$gener = gener($arr2d2, function($v)//принимаем внутренний числовой массив
{
$sum = 0; //начальное значение суммы элементов переданного массива
foreach ($v as $val) $sum += $val; //считаем сумму всех элементов массива
return $sum / count($v); //возвращаем среднее значение
});

//итерируем(или генерируем)
foreach ($gener as $v) echo "$v, "; 
Профиль Ответить
22.01.2019 01:15:36 Обсуждение по решению задач курса PHP и MySQL с Нуля до Гуру 2.0 Сообщение #5
John Doe

John Doe

Освоившийся

Освоившийся

Дата регистрации:
14.01.2019 19:23:31

Сообщений: 36

№1_23
Тут пришлось повозиться (из-за многобайтности), а так, вроде, просто:
<?php
$iStr = $oStr = false;
if(isset($_POST['text'])) {
$iStr = $_POST['iString'] ?? false;
for ($i = 0; $i < mb_strlen($iStr); $i++) {
$arr[] = mb_substr($iStr, $i, 1, 'UTF-8';
}
$oStr = '';


if(!empty($iStr)) {
for ($i = 0; $i < count($arr); $i++) {
if ($i % 2 !== 0) continue;
$oStr .= $arr[$i];
}

}
}
?>

<form action="<?=$_SERVER['PHP_SELF']?>" method="post">
<textarea name="iString" id="" cols="30" rows="10" value=""><?=$iStr?></textarea>
<input type="submit" name="text" value="Расстрочить">
</form>

<?php if(!empty($oStr)) :?>
<p>Пришла строка: <?=$iStr?></p>
<p>А получилась: <?=$oStr?></p>
<?php endif ?>
Профиль Ответить
24.01.2019 10:48:02 Обсуждение по решению задач курса PHP и MySQL с Нуля до Гуру 2.0 Сообщение #6
elk27ok_myrus

elk27ok_myrus

Новичок

Новичок

Дата регистрации:
11.01.2019 08:49:54

Сообщений: 5

В ответ на это дааавнее сообщение:
Обсуждение по решению задач курса PHP и MySQL с Нуля до Гуру 2.0
24.08.2017 23:05:45 ctalkep777
Всем привет! Не понял ДЗ в разделе Основы языка PHP > 7. Строковые операции > 5. * Откройте текстовый файл в «Блокноте» или любом другом редакторе с помощью скрипта на PHP.
+
29.08.2017 17:20:05 Tahmasib

Сначала тоже не понял ))).
Рыл в сторону
system — Выполнить внешнюю программу и отобразить вывод
http://php.net/manual/ru/function.system.php
file_get_contents
http://php.net/manual/ru/function.file-get-contents.php
и т.д. - всё не то.

А вот exec — Выполнить внешнюю программу
http://php.net/manual/ru/function.exec.php
- сработал

Выглядит так:
exec( '"c:\DATA\...\sublime_text.exe" index0.txt' );

В общем виде:
exec( '"путь_к_программе_редактору\запускаемый_файл_программы_редактора" файл_который_нужно_редактировать' );

ВАЖНО! exec( ОДИНАРНАЯ кавычка ДВОЙНАЯ КАВЫЧКА[пробела_после_кавычек_нет]путь_к_редактору[пробела_перед_кавычками_нет]ДВОЙНАЯ КАВЫЧКА редактируемый_файл ОДИНАРНАЯ кавычка );
Профиль Ответить
24.01.2019 11:01:45 Обсуждение по решению задач курса PHP и MySQL с Нуля до Гуру 2.0 Сообщение #7
elk27ok_myrus

elk27ok_myrus

Новичок

Новичок

Дата регистрации:
11.01.2019 08:49:54

Сообщений: 5

14.01.2019 19:31:28 ashivin
Без echo делал:
exec( '"путь_к_файлу_программы_редактора" редактируемый_файл.txt' )
;
//порядок кавычек важен: одинарная двойные*двойные * одинарная
Профиль Ответить
24.02.2019 12:33:28 Обсуждение по решению задач курса PHP и MySQL с Нуля до Гуру 2.0 Сообщение #8
geri14

geri14

Новичок

Новичок

Дата регистрации:
24.02.2019 12:27:05

Сообщений: 2

<?php
function cmp($a, $b){
if ($a == $b) return 0;
return ($a < $b) ? -1 : 1;
}
$a = array(3, 2, 5, 6, 1);
usort($a, "cmp";
print_r($a);
?>

Подскажите откуда в этом случае функция получает переменные a и b
Профиль Ответить
25.02.2019 08:56:11 Обсуждение по решению задач курса PHP и MySQL с Нуля до Гуру 2.0 Сообщение #9
elk27ok_myrus

elk27ok_myrus

Новичок

Новичок

Дата регистрации:
11.01.2019 08:49:54

Сообщений: 5

Присоединяюсь к вопросу.
Прикольно. При любом "прямом" вызове cmp (как и задано) должно быть 2 определенных параметра.
 
К примеру (чтобы не вводить себя во искушение, заменим "внешнюю" $a на $r – без вариантов –совершенно разные переменные):function cmp($a, $b){ 
if ($a == $b) return 0; 
return ($a < $b) ? -1 : 1; 

 
$r = array(3, 2, 5, 6, 1); 
 
usort($r, "cmp"
echo '<br> print_r($r)<br>';
print_r($r); 
 
$any = NULL;
$var = cmp($r, $any);
echo '<br>'. gettype($var);
echo '<br> print_r($var = cmp($r,$any))<br>';
print_r($var);
Получаем:

print_r($r)
Array ( [0] => 1 [1]=> 2 [2] => 3 [3] => 5 [4] => 6 )

integer
print_r($var = cmp($r,$any))
1
 
По крайней мере, второй параметр в cmp может быть: целым, строкой, булевым, массивом, NULL - на результат не влияет! Если только
$any = true, то $var будет 0, в других случаях 1.
 
Здесь – типа ответ:
https://ideone.com/ubi7Aq
 
Я всё равно не вкуриваю:
"внутренние" для функции переменные"А и Б" (сидели на трубе) cmp в этой части:
usort($r, "cmp";
как находит?

P.S. Скачок в сторону - к товарищам разработчикам:
вот в такой последовательности: "кавычки" "правая круглая скобка" "точка с запятой" - на вашем сайте не отображается "правая круглая скобка"...
Профиль Ответить
25.02.2019 14:09:30 Обсуждение по решению задач курса PHP и MySQL с Нуля до Гуру 2.0 Сообщение #10
Chechelsk

Chechelsk

Новичок

Новичок

Дата регистрации:
27.10.2018 18:17:18

Сообщений: 4

вопрос John Doe - Привет. Скажи как с тобой можно связаться (email, скайп, viber)?
или напиши мне пожалуйста chechelsk@mail.com
Спасибо.
Профиль Ответить