小编Pek*_*ica的帖子

使用PHP"注意:未定义的变量","注意:未定义的索引"和"通知:未定义的偏移量"

我正在运行PHP脚本,并继续收到如下错误:

注意:未定义的变量:第10行的C:\ wamp\www\mypath\index.php中的my_variable_name

注意:第11行的未定义索引:my_index C:\ wamp\www\mypath\index.php

第10行和第11行看起来像这样:

echo "My variable value is: " . $my_variable_name;
echo "My index value is: " . $my_array["my_index"];
Run Code Online (Sandbox Code Playgroud)

这些错误消息的含义是什么?

他们为什么突然出现?我曾经使用这个脚本多年,我从来没有遇到任何问题.

我该如何解决?

这是一个一般参考问题,供人们链接到重复,而不是一遍又一遍地解释这个问题.我觉得这是必要的,因为关于这个问题的大多数现实世界的答案都非常具体.

相关元讨论:

php arrays variables warnings undefined-index

1119
推荐指数
20
解决办法
163万
查看次数

如何运行PowerShell脚本

如何运行PowerShell脚本?

  • 我有一个名为myscript.ps1的脚本
  • 我已经安装了所有必要的框架
  • 我设置了执行策略的东西
  • 我已按照此MSDN帮助页面上的说明操作, 并尝试按以下方式运行:( powershell.exe 'C:\my_path\yada_yada\run_import_script.ps1'有或没有--noexit)

除了输出文件名外,它什么都不返回.

没有错误,没有消息,没有.哦,当我添加时-noexit,同样的事情发生了,但我仍然在PowerShell中,必须手动退出.

.ps1文件应该运行程序并返回依赖于该程序输出的错误级别.但我很确定我还没有到达那里.

我究竟做错了什么?

windows powershell scripting

662
推荐指数
13
解决办法
166万
查看次数

了解REST:动词,错误代码和身份验证

我正在寻找一种方法来在我的基于PHP的Web应用程序,数据库和CMS中围绕默认函数包装API.

我环顾四周,发现了几个"骨架"框架.除了我的问题的答案,还有Tonic,我喜欢的REST框架,因为它非常轻量级.

我最喜欢REST,因为它简单,并且希望基于它创建一个API架构.我试图了解基本原则并且还没有完全理解它.因此,一些问题.

我理解对吗?

假设我有一个资源"用户".我可以像这样设置一些URI:

/api/users     when called with GET, lists users
/api/users     when called with POST, creates user record
/api/users/1   when called with GET, shows user record
               when called with PUT, updates user record
               when called with DELETE, deletes user record
Run Code Online (Sandbox Code Playgroud)

到目前为止,这是RESTful架构的正确表示吗?

我需要更多的动词

理论上创建,更新和删除可能就足够了,但在实践中我需要更多的动词.我意识到这些内容可以嵌入到更新请求中,但它们是具有特定返回代码的特定操作,我不想将它们全部放入一个操作中.

用户示例中的一些想法是:

activate_login
deactivate_login
change_password
add_credit
Run Code Online (Sandbox Code Playgroud)

我将如何表达RESTful URL架构中的操作?

我的直觉是对像这样的URL进行GET调用

/api/users/1/activate_login 
Run Code Online (Sandbox Code Playgroud)

并期望返回状态代码.

但是,这偏离了使用HTTP动词的想法.你怎么看?

3.如何返回错误消息和代码

REST的美丽很大一部分源于其使用标准HTTP方法.如果出错,我会发出一个包含3xx,4xx或5xx错误状态代码的标头.对于详细的错误描述,我可以使用正文(对吗?).到现在为止还挺好.但是,传输专有错误代码的方法是什么,该错误代码在描述错误时更详细(例如"无法连接到数据库"或"数据库登录错误")?如果我把它和信息一起放入体内,我必须在事后解析它.这种东西有标准的标题吗?

4.如何进行身份验证

  • 遵循REST原则的基于API密钥的身份验证是什么样的?
  • 在验证REST客户端时,是否有强烈反对使用会话的优点,除了它是公然违反REST原则?:)(这里只有半开玩笑,基于会话的身份验证可以很好地与我现有的基础设施配合使用.)

rest web-services

593
推荐指数
9
解决办法
13万
查看次数

如何限制HTML5"数字"元素中的可能输入?

对于<input type="number">元素,maxlength不起作用.如何限制该maxlength数字元素?

html html5 numbers input max

330
推荐指数
19
解决办法
62万
查看次数

为PHP项目设置部署/构建/ CI周期

我大部分时间都是单独的开发人员,从事一些大型的,主要是基于PHP的项目.我希望专业化和自动化如何处理代码库的更改,并创建一个持续集成过程,使过渡在团队中工作,而不必进行根本性的更改.

我现在正在做的是,我为每个项目都有一个本地测试环境; 我为每个项目使用SVN; 更改在本地进行测试,然后通常通过FTP传输到联机版本.API文档是从源代码手动生成的; 单元测试是我慢慢进入的,它还不是我日常工作的一部分.

我想象的"构建周期"将执行以下操作:

  • 在本地测试后,变更集将被检入SVN.

  • 我开始构建过程.SVN HEAD修订版将被检出,必要时进行修改,并准备上传.

  • API文档会自动生成 - 如果我还没有详细设置,使用默认模板,扫描整个代码库.

  • 新修订通过FTP部署到远程位置(包括一些目录重命名,chmodding,导入数据库,和喜欢.)这是我已经喜欢phing非常多,但我很开放的,当然选择.

  • 运行驻留在预定义位置的单元测试.我被告知他们使用电子邮件,RSS或(最好)HTML输出的失败或成功,我可以抓取并放入网页.

  • (可选)预定义位置的最终用户"changelog"文本文件使用提交消息的预定义部分进行更新("现在可以同时过滤"foo"和"bar"此消息不一定与SVN提交消息相同,后者可能包含更多内部信息.

  • 像代码指标,代码样式检查等等东西现在不是我的主要关注点,但从长远来看,它们肯定会.带来这种开箱即用的解决方案非常受到关注.

我在寻找

  • 来自或处于类似情况的人的反馈和经验,并已成功实施此解决方案

  • 特别是,关于如何设置它的好的分步教程和演练

  • 提供尽可能多的自动化的解决方案,例如为每个新项目创建框架API,测试用例等.

并且

  • 产品推荐.到目前为止,我所知道的是用于构建的phing/ant,以及用于报告部分的phpUnderControlHudson.我尽可能地喜欢它们,但我当然没有详细的经验.

忙于工作,所以我倾向于简单的解决方案.另一方面,如果缺少一个功能,我会因为它太有限而哭泣.:)欢迎使用点击式解决方案.我也是可以使用PHP项目的商业产品推荐.

我的设置

我在本地工作Windows(确切地说是7),大多数客户端项目都在LAMP堆栈上运行,通常在共享主机上运行(=没有远程SSH).我正在寻找可以在我自己的环境中运行的解决方案.我准备为此设置一个Linux VM,没问题.托管解决方案对我来说很有意思,只要它们提供了所描述的所有方面,或者足够灵活,可以与流程的其他部分进行交互.

赏金 我接受了我觉得会给我最多里程的答案.这里有很多很棒的输入,我希望我能接受不止一个答案.感谢大家!

php phing continuous-integration phpundercontrol

198
推荐指数
4
解决办法
4万
查看次数

如何在PowerShell中输出内容

我正在批处理文件中运行PowerShell脚本.该脚本获取一个网页并检查该页面的内容是否为字符串"OK".

PowerShell脚本向批处理脚本返回错误级别.

批处理脚本由ScriptFTP执行,ScriptFTP是一个FTP自动化程序.如果发生错误,我可以让ScriptFTP通过电子邮件将完整的控制台输出发送给管理员.

在PowerShell脚本中,如果它不是"OK",我想从网站输出返回值,因此错误消息包含在控制台输出中,因此也包含在状态邮件中.

我是PowerShell的新手,不知道要使用哪个输出函数.我可以看到三个:

  • 写主机
  • 写输出
  • 写入错误

用什么来写Windows等价的东西是正确的stdout

windows powershell

197
推荐指数
5
解决办法
54万
查看次数

Textarea可以动态进行语法高亮显示吗?

我在CMS中存储了许多HTML块,以便于维护.它们由<textarea>s 代表.

有没有人知道某种类型的JavaScript Widget可以在一个textarea或类似的内容中为HTML进行语法高亮,同时仍然保持纯文本编辑器(没有WYSIWYG或高级功能)?

html javascript widget highlighting richtextbox

194
推荐指数
8
解决办法
16万
查看次数

HTML中的三态复选框?

HTML中没有办法使用三态检查按钮(是,否,为null),对吧?

是否有任何简单的技巧或解决方法,而不必自己呈现整个事物?

html forms checkbox

154
推荐指数
5
解决办法
9万
查看次数

URL中的Unicode字符

在2010年,您是否会在大型门户网站中提供包含UTF-8字符的URL?

根据URL上的RFC禁止使用Unicode字符(请参阅此处).它们必须被编码为符合标准的百分比.

不过,我的主要观点是提供未编码的字符,其唯一目的是拥有漂亮的URL,因此百分比编码已经完成.

无论RFC说什么,所有主流浏览器似乎都可以解析这些URL.不过,我的总体印象是,当离开网络浏览器的域时,它会变得非常不稳定:

  • URL被复制+粘贴到文本文件,电子邮件,甚至是具有不同编码的网站
  • HTTP客户端库
  • 异国浏览器,RSS阅读器

我的印象是否正确,预计会遇到麻烦,因此,如果您为非技术受众提供服务并且即使引用并传递了所有链接也很重要,那么这还不是一个实用的解决方案吗?

是否有一些神奇的方式在HTML中提供漂亮的URL

http://www.example.com/düsseldorf?neighbourhood=Lörick
Run Code Online (Sandbox Code Playgroud)

可以复制+粘贴特殊字符,但在旧客户端重复使用时可以正常工作吗?

html unicode url utf-8

133
推荐指数
5
解决办法
13万
查看次数

在PHP项目中,存在哪些模式来存储,访问和组织帮助程序对象?

在基于PHP的面向对象项目中,如何组织和管理辅助对象,如数据库引擎,用户通知,错误处理等?

假设我有一个大的PHP CMS.CMS由各种类别组织.几个例子:

  • 数据库对象
  • 用户管理
  • 用于创建/修改/删除项目的API
  • 消息传递对象,用于向最终用户显示消息
  • 一个上下文处理程序,可以将您带到正确的页面
  • 显示按钮的导航栏类
  • 记录对象
  • 可能,自定义错误处理

等等

我正在处理永恒的问题,如何最好地使这些对象可以访问需要它的系统的每个部分.

很多年前,我的第一个应用程序是拥有一个包含这些类的初始化实例的$ application全局.

global $application;
$application->messageHandler->addMessage("Item successfully inserted");
Run Code Online (Sandbox Code Playgroud)

然后我切换到Singleton模式和工厂函数:

$mh =&factory("messageHandler");
$mh->addMessage("Item successfully inserted");
Run Code Online (Sandbox Code Playgroud)

但我对此也不满意.单元测试和封装对我来说变得越来越重要,在我的理解中,全局/单例背后的逻辑破坏了OOP的基本思想.

那么当然有可能给每个对象提供它需要的辅助对象的许多指针,可能是最干净,资源节省和测试友好的方式,但我对这长期可维护性有疑问.

我研究过的大多数PHP框架都使用单例模式或访问初始化对象的函数.这两种方法都不错,但正如我所说的那样,我对它们都不满意.

我想扩大我对这里存在的常见模式的看法.我找实例,更多的想法和指针向资源从讨论这个长期的,真实世界的视角.

另外,我很想知道这个问题的专门,利基或简单的奇怪方法.

php oop design-patterns

114
推荐指数
5
解决办法
1万
查看次数