我有以下代码:
$now = date("Y-m-d H:m:s");
$date = date("Y-m-d H:m:s", strtotime('-24 hours', $now));
Run Code Online (Sandbox Code Playgroud)
但是,现在它给了我这个错误:
A non well formed numeric value encountered in...
Run Code Online (Sandbox Code Playgroud)
为什么是这样?
我在Postgres上使用Doctrine2.在一个表中,我有两种不同的日期类型:birthdate:date和created_at:datetimetz.两者都成为DateTime对象但具有不同timezone_type.这是列表:
created_at datetimetz:
DateTime Object
(
[date] => 2013-04-18 11:54:34
[timezone_type] => 1
[timezone] => +02:00
)
Run Code Online (Sandbox Code Playgroud)
birthdate 日期:
DateTime Object
(
[date] => 1970-01-01 00:00:00
[timezone_type] => 3
[timezone] => Europe/Berlin
)
Run Code Online (Sandbox Code Playgroud)
我需要以相同的方式格式化我的对象.两者都应该有timezone_type=3.
我怎样才能做到这一点?
我为我的个人PHP库创建了一个SVN存储库,并在根级别添加了一个composer.json文件:
{
"name": "myPersonalLibrary/lib",
"type": "library",
"description": "Light MVC framework for PHP 5.4",
"keywords": ["database","mvc"],
"homepage": "http://mysite.com",
"license": "MIT",
"require": {
"php": ">=5.3.0",
"mustache/mustache": "dev-master"
},
"autoload": {
"psr-0": {
"bbn": "src"
}
}
}
Run Code Online (Sandbox Code Playgroud)
然后我使用以下composer.json创建了一个项目:
{
"require": {
"monolog/monolog": "1.0.*",
"zerkalica/php-code-sniffer": "dev-master",
"mustache/mustache": "dev-master",
"myPersonalLibrary/lib": "*"
},
"repositories": [
{
"type": "svn",
"url": "https://mysite.com/svn/myPersonalLibrary",
"branches-path": false,
"tags-path": false,
"trunk-path": "src"
}
]
}
Run Code Online (Sandbox Code Playgroud)
当我尝试更新我的项目时,我得到: No valid composer.json was found in any branch or tag of https...
我认为问题来自我的文件结构,但我找不到任何关于此的文档:
/my_repo
/src …Run Code Online (Sandbox Code Playgroud) 我需要将jQuery和其他javascript文件添加到我的Zend Framework项目中.我正在尝试使用Action控制器: -
public function userinfoAction()
{
$this->view->headScript()->appendFile($basePath .'/js/validate_jquary.js');
$this->headScript()->appendFile('http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js');
return new ViewModel();
}
Run Code Online (Sandbox Code Playgroud)
但它没有用.
我试图弄清楚某个月的第一个星期三使用strtotime,但是"第一个星期三"的论点在第一个星期三恰好落在1号时就失败了.
有关此问题的更一般说明,请参阅以下代码和结果:
$mon = strtotime("December 2010 first monday");
$tue = strtotime("December 2010 first tuesday");
$wed = strtotime("December 2010 first wednesday");
$thu = strtotime("December 2010 first thursday");
$fri = strtotime("December 2010 first friday");
$sat = strtotime("December 2010 first saturday");
$sun = strtotime("December 2010 first sunday");
echo strftime("%m/%d/%y", $mon) . "<br>";
echo strftime("%m/%d/%y", $tue) . "<br>";
echo strftime("%m/%d/%y", $wed) . "<br>";
echo strftime("%m/%d/%y", $thu) . "<br>";
echo strftime("%m/%d/%y", $fri) . "<br>";
echo strftime("%m/%d/%y", $sat) . "<br>";
echo strftime("%m/%d/%y", $sun) . …Run Code Online (Sandbox Code Playgroud) 我正在尝试从我的网络服务器检索上传的文件.当客户端通过webform(随机文件)发送文件时,我需要解析请求以获取文件并进一步处理.基本上,代码如下:
HttpListenerContext context = listener.GetContext();
HttpListenerRequest request = context.Request;
StreamReader r = new StreamReader(request.InputStream, System.Text.Encoding.Default);
// this is the retrieved file from streamreader
string file = null;
while ((line = r.ReadLine()) != null){
// i read the stream till i retrieve the filename
// get the file data out and break the loop
}
// A byststream is created by converting the string,
Byte[] bytes = request.ContentEncoding.GetBytes(file);
MemoryStream mstream = new MemoryStream(bytes);
// do the rest
Run Code Online (Sandbox Code Playgroud)
因此,我能够检索文本文件,但对于所有其他文件,它们都已损坏.有人能告诉我如何正确解析这些HttplistnerRequests(或提供轻量级替代)?
我试图将我的SQL数据库中的表的主键从现有键更改为复合键,该组合键不包括现有列.由于以下错误消息,以下代码无法正常工作:
DROP PRIMARY KEY:
PRIMARY附近的语法不正确.期望COLUMN,CONSTRAINT,ID或QUOTED_ID
添加主要关键:
PRIMARY附近的语法不正确.期待身份证
T-SQL代码:
ALTER TABLE AgentIdentification
DROP PRIMARY KEY Number,
ADD PRIMARY KEY (AgentId, IdIndicator)
Run Code Online (Sandbox Code Playgroud)
编辑
我能够通过使用以下两个查询语句来完成此任务
ALTER TABLE AgentIdentification
DROP CONSTRAINT [PK_AgentId_Id]
GO
ALTER TABLE AgentIdentification
ADD CONSTRAINT pk_PersonID PRIMARY KEY (AgentId, IdIndicator)
Run Code Online (Sandbox Code Playgroud)
相反,要求SQL"DROP PRIMARY KEY"我需要告诉它"DROP的约束",也分离这两个动作分为两个查询帮助.
$a = 1950-05-01
$b = 1965-08-10
$c = 1990-12-30
$d = 1990-12-29
$e = 2012-09-03
Run Code Online (Sandbox Code Playgroud)
从按日期升序排序的mysql数据库中检索日期.
我需要一个mysql或PHP脚本来获得具有最大天差的两个CONSECUTIVE日期.
解释:脚本应该计算$ a和$ b,$ b和$ c,$ c和$ d,$ d和$ e,$ e和$ a之间的天数,然后以最大天差输出两个日期.
有没有办法用一个快速的mysql/php代码执行此操作,或者我应该使用以下脚本进行一些循环(在stackoverflow上的另一个问题上找到它)?
$now = time(); // or your date as well
$your_date = strtotime("2010-01-01");
$datediff = $now - $your_date;
echo floor($datediff/(60*60*24));
Run Code Online (Sandbox Code Playgroud)
查询列出日期:
SELECT date AS count FROM table WHERE column1 = 'YES' AND data BETWEEN 1950-01-01 AND 2012-09-04
Run Code Online (Sandbox Code Playgroud) 这就是我设置会话的方式
$this -> sess = new Zend_Session_Namespace('user');
$this -> sess -> username = "Bob";
$this -> sess -> admin = "1";
Run Code Online (Sandbox Code Playgroud)
这就是我杀了它的方式
setcookie("mycookiename",md5(rand(10,1200)),time() - (60 * 60),"/",".site.com");
$_SESSION = array();
session_destroy();
$this -> _redirect('/');
Run Code Online (Sandbox Code Playgroud)
但它仍然保持$ this-> sess-> admin为'1'...用户名已消失,但管理员保持为一.删除与客户端关联的所有会话的正确方法是什么?
如果我做
$this->sess->admin = 0;
Run Code Online (Sandbox Code Playgroud)
然后它工作,但我怀疑这是我持有的每个会话变量的正确方法.
我也试过了
setcookie("mycookiename",md5(rand(10,1200)),time() - (60 * 60),"/",".site.com");
Zend_Session::namespaceUnset($this->sess);
Run Code Online (Sandbox Code Playgroud)
它没有用,它没有关闭任何会话.
这不仅仅是一个难题.我实际上找到了一个解决方案,但它很慢,我以为我丢失了我的网络连接(见下文).
假设我有一系列数字,如下所示:
$numbers_array = array(1, 2, 3, 4, 5, 6, 7, 8, 9);
Run Code Online (Sandbox Code Playgroud)
我们还说我有一些数字,存储在变量中,如下所示:
$sum = 15;
$sum2 = 24;
$sum3 = 400;
Run Code Online (Sandbox Code Playgroud)
我正在尝试创建一个函数,如果$numbers_array可以将任何数字加在一起(每个只使用一次)以形成总和,则返回true :
function is_summable($array_of_nums, $sum_to_check) {
//What to put here?
}
var_dump(is_summable($numbers_array, $sum));
var_dump(is_summable($numbers_array, $sum2));
var_dump(is_summable($numbers_array, $sum3));
Run Code Online (Sandbox Code Playgroud)
以上应输出:
bool(true)
bool(true)
bool(false)
Run Code Online (Sandbox Code Playgroud)
因为7 + 8 = 15,7 + 8 + 9 = 24,但没有1-9的组合可以创建200.
这是我极其缓慢的解决方案:
function is_summable($numbers, $sum) {
//Sort provided numbers and assign numerical keys.
asort($numbers);
$numbers = array_values($numbers);
//Var for additions and var for …Run Code Online (Sandbox Code Playgroud) php ×7
datetime ×3
add ×1
c# ×1
composer-php ×1
httplistener ×1
javascript ×1
jquery ×1
mysql ×1
numbers ×1
packagist ×1
parsing ×1
postgresql ×1
primary-key ×1
session ×1
sql ×1
sql-server ×1
streamreader ×1
strtotime ×1
sum ×1
svn ×1
timezone ×1