Я хочу иметь возможность изменять элементы массива, которые находятся в родительском pid.Вот пример кода:
$arrayContainer = array(
array(
"id" => 1,
"name" => "Lenny"
),
array(
"id" => 2,
"name" => "Dudley"
),
array(
"id" => 3,
"name" => "Simon"
),
);
foreach ($arrayContainer as $key => $element) {
$pid = pcntl_fork();
if($pid == -1) {
// Something went wrong (handle errors here)
die("Could not fork!");
} elseif($pid == 0) {
$arrayContainer[$key]['size'] = 123;
$arrayContainer[$key]['fileName'] = 'somefile.txt';
// The child dies after a short while, becoming a zombie
exit();
} else {
// This part is only executed in the parent
}
}
Таким образом, когда этот скрипт завершает работу, два элемента, которые я написал в дочернем процессе, отсутствуют в конце цикла foreach.Я не могу изменить массив, который находится в родительском pid от дочернего.Я понимаю почему, но не могу придумать хорошее решение, которое позволит мне.Можете ли вы предложить что-нибудь?Глобалы или что-то?