5 분이 지난 후에 이벤트를 실행하는 PHP 파일을 만들고 있습니다. 문서에서 5 분을 기다리는 것만으로 sleep(300)
이 필요할 것으로 보이지만 작동하지 않습니다. 다른 모든 코드를 테스트했는데 sleep
행을 추가 할 때까지 제대로 작동합니다. 문서의 상단에 set_time_limit(0);
를 추가PHP sleep() not working
<?php
/**
* Twitter App
* bagelBack.php
* Takes parameters from $_POST and creates a tweet
* RKoutnik, 2012
* Code originally found on http://140dev.com/twitter-api-programming-tutorials/hello-twitter-oauth-php/
*/
$name = '@'.$_POST['twitterName'];
$type = $_POST['bagelType'];
/* BEGIN CONTENT SPINNER TO IMPRESS LYNK */
$bagels = array(
0 => "bagel",
1 => "breakfast treat",
2 => "doughy food-type item",
3 => "round yeast-raised munchie",
4 => "doughnut-shaped roll",
5 => "hard-crusted treat"
);
$finished = array(
0 => "finished toasting",
1 => "completed toasting",
2 => "stopped being raw",
3 => "concluded the toasting phase",
4 => "been sucessfully executed",
5 => "been roasted to a crisp"
);
$food = $bagels[array_rand($bagels)];
$fin = $finished[array_rand($finished)];
sleep(300);
$tweet_text = $name.", Your ".$type." ".$food." has ".$fin;
$result = post_tweet($tweet_text);
echo "Response code: " . $result . "\n";
function post_tweet($tweet_text) {
// Use Matt Harris' OAuth library to make the connection
// This lives at: https://github.com/themattharris/tmhOAuth
require_once('tmhOAuth.php');
// Set the authorization values
// In keeping with the OAuth tradition of maximum confusion,
// the names of some of these values are different from the Twitter Dev interface
// user_token is called Access Token on the Dev site
// user_secret is called Access Token Secret on the Dev site
// The values here have asterisks to hide the true contents
// You need to use the actual values from Twitter
$connection = new tmhOAuth(array(
'consumer_key' => '[redacted]',
'consumer_secret' => '[redacted]',
'user_token' => '[redacted]',
'user_secret' => '[redacted]',
'curl_ssl_verifypeer' => false
));
// Make the API call
$connection->request('POST',
$connection->url('1/statuses/update'),
array('status' => $tweet_text)
);
return $connection->response['code'];
}
?>
작동하지 않는다는 것은 무엇을 의미합니까? sleep() 호출이있을 때 PHP 스크립트가 완전히 작동하지 않습니까? 잠이 들었지 만 5 분 동안은 아니야? – andrewsi
전혀 작동하지 않습니다. 그것은 트위터에 아무것도 게시하지 않습니다. – SomeKittens
php.ini의'max_execution_time'은 무엇입니까? 어쩌면 스크립트가 너무 오래 실행되고 있으므로 아무 것도 수행되기 전에 존재할 수도 있습니다. – enricog