Cron 作业:您不能拥有的代码 PHP
Cron job: Code you cannot have PHP
我的 cron 作业不工作,我在想是否有任何 PHP 代码可以阻止它形成。
我知道它是如何工作的,但我想知道在 PHP 代码中不会读取什么样的 go 代码。
我发现一个不起作用的代码是 sessionstart()
和 $_SESSION
,因为它像 cookie 一样将它保存在服务器上,并且 cron 作业不通过服务器或其他东西。
因此,是否有任何其他代码根据您自己的知识无法工作,例如 file_get_contents
或 fopen()
(我不知道这些是否行不通。只是提供想法)
编辑
<?php
$dbhost = "localhost";
$dbuser = "it32_2015";
$dbpass = "it32_2015";
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('Could not connect: ' . mysql_error());
}
$sql = 'SELECT Title, Pubdate, Link FROM ytable';
mysql_select_db('it32_2015');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
{
$status .= "速報ニュース:".
"{$row['Title']} : ".
"ここでチェック!".
"{$row['Link']}".
"時間:".
"{$row['Pubdate']}".
" #yahoonews END";
}
$statusarray = explode(" END",$status);
$result = mysql_query('SELECT MIN(ID) AS min, MAX(ID) AS max FROM ytable') or exit(mysql_error());
$row = mysql_fetch_assoc($result);
$check = file_get_contents('/home/www2/it32.lady2.itall.co.jp/www/counter.php');
if($check < $row['max']){
if (is_numeric($check)){
$counter = ++$check;
}
}
$fp = fopen('/home/www2/it32.lady2.itall.co.jp/www/counter.php',"w+");
fwrite($fp, $counter);
fclose($fp);
require("/home/www2/it32.lady2.itall.co.jp/www/tweet.php");
?>
我的代码中是否有任何不能用于 cron 的代码。
Cron 作业,即计划任务是 运行 定期执行的脚本。因此,该脚本并不意味着要与用户进行交互。它只是为了执行一个动作。所以会话不适用于 cron 作业的原因是因为没有用户可以为其启动会话。任何需要用户工作的 PHP 功能(例如 setcookie()
、session_start()
)将无法工作。所有其他功能都将。
编辑:
脚本中的所有函数都将按预期运行。
我的 cron 作业不工作,我在想是否有任何 PHP 代码可以阻止它形成。 我知道它是如何工作的,但我想知道在 PHP 代码中不会读取什么样的 go 代码。
我发现一个不起作用的代码是 sessionstart()
和 $_SESSION
,因为它像 cookie 一样将它保存在服务器上,并且 cron 作业不通过服务器或其他东西。
因此,是否有任何其他代码根据您自己的知识无法工作,例如 file_get_contents
或 fopen()
(我不知道这些是否行不通。只是提供想法)
编辑
<?php
$dbhost = "localhost";
$dbuser = "it32_2015";
$dbpass = "it32_2015";
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
die('Could not connect: ' . mysql_error());
}
$sql = 'SELECT Title, Pubdate, Link FROM ytable';
mysql_select_db('it32_2015');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
die('Could not get data: ' . mysql_error());
}
while($row = mysql_fetch_array($retval, MYSQL_ASSOC))
{
$status .= "速報ニュース:".
"{$row['Title']} : ".
"ここでチェック!".
"{$row['Link']}".
"時間:".
"{$row['Pubdate']}".
" #yahoonews END";
}
$statusarray = explode(" END",$status);
$result = mysql_query('SELECT MIN(ID) AS min, MAX(ID) AS max FROM ytable') or exit(mysql_error());
$row = mysql_fetch_assoc($result);
$check = file_get_contents('/home/www2/it32.lady2.itall.co.jp/www/counter.php');
if($check < $row['max']){
if (is_numeric($check)){
$counter = ++$check;
}
}
$fp = fopen('/home/www2/it32.lady2.itall.co.jp/www/counter.php',"w+");
fwrite($fp, $counter);
fclose($fp);
require("/home/www2/it32.lady2.itall.co.jp/www/tweet.php");
?>
我的代码中是否有任何不能用于 cron 的代码。
Cron 作业,即计划任务是 运行 定期执行的脚本。因此,该脚本并不意味着要与用户进行交互。它只是为了执行一个动作。所以会话不适用于 cron 作业的原因是因为没有用户可以为其启动会话。任何需要用户工作的 PHP 功能(例如 setcookie()
、session_start()
)将无法工作。所有其他功能都将。
编辑:
脚本中的所有函数都将按预期运行。