草庐IT

Invalid_argument

全部标签

PHP try-catch block : are they able to catch invalid arg types?

背景:假设我有以下明显不正确的PHP:try{$vtest='';print(array_pop($vtest));}catch(Exception$exx){}为了与array_pop一起工作,$vtest显然应该是一个数组,而不是一个字符串。然而,当我运行此代码时,会显示警告。我不想这样,我只想让代码静静地失败。问题:与其他语言相比,PHPtry-catch是否有什么特别之处导致它无法正常工作?免责声明:仅供引用,在PHP中确实有其他方法可以处理这种情况,但这些都是不可取的。这里的目标是避免:“at-sign”技巧:$vtest='';print(@array_pop($vtest

php - 编码标准 : Large amount of arguments

嘿,我是一名大学毕业生。我正在从事一个我希望最终由其他人维护的项目。我在这个项目中一直遇到一个恼人的情况,那就是需要许多私有(private)变量的对象,因此构造函数非常长。除了变量命名之外,没有强制执行任何编码标准。我想知道如何处理这样的事情。有时我担心我以后会在dailywtf上看到我自己的一些代码!我想尝试将其中一些争论包含在其他类(class)中,但在这种情况下它真的没有意义。这完全不是问题,还是应该并且很容易纠正的问题?publicfunction__construct($uCode='',$uName='',$uTime='',$uArea='',$uDomain='',$

php - 解析错误 : Invalid numeric literal

运行下面这段代码时出现以下错误:代码:错误:Parseerror:Invalidnumericliteral.为什么会出现这个问题,我该如何解决? 最佳答案 这是因为在PHP7中处理整数(特别是八进制)的方式发生了变化(与PHP5不同)。来自文档(来自PHP7迁移)InvalidoctalliteralsPreviously,octalliteralsthatcontainedinvalidnumbersweresilentlytruncated(0128wastakenas012).Now,aninvalidoctallitera

php - htmlspecialchars() : Invalid multibyte sequence in argument

我在我的本地站点中遇到此错误。Warning(2):htmlspecialchars():Invalidmultibytesequenceinargumentin[/var/www/html/cake/basics.php,line207]有谁知道,这是什么问题或解决方案应该是什么?谢谢。 最佳答案 如果您的文件是这样编码的,请务必将编码指定为UTF-8:htmlspecialchars($str,ENT_COMPAT,'UTF-8');htmlspecialchars的默认字符集是ISO-8859-1(从PHPv5.4开始,默认字

php - 谷歌认证 : OAuth2 keeps returning 'invalid_grant'

我开始在我的新应用程序上配置谷歌日历。我几乎完全复制了谷歌开发人员(https://developers.google.com/google-apps/calendar/instantiate)上显示的身份验证代码,但我不断收到以下错误:获取OAuth2访问token时出错,消息:“invalid_grant”我目前正在使用Fork-CMS(http://www.fork-cms.com),一个年轻的轻量级CMS。我正确配置了google-api-php-client的config.php文件。(client-id,client-secret,redirect-uri,developm

php - preg_match() : Compilation failed: invalid range in character class at offset

提前感谢您抽出宝贵时间帮助解决此问题。preg_match():Compilationfailed:invalidrangeincharacterclassatoffset20session.phponline278在我们的服务器上进行PHP升级后,这在工作了几个月后突然停止工作。这里是代码else{/*Spruceupusername,checklength*/$subuser=stripslashes($subuser);if(strlen($subuser)setError($field,"*Usernamebelow".$config['min_user_chars']."ch

MySQL IN 子句 : max number of arguments

假设您有以下查询:SELECT*FROMtable1WHEREtable1.idIN(1,2,3,4,5,...,999999)IN子句中项目数量的合理最大值是多少?我正在使用Sphinx生成全文搜索结果并将ID插入到MySQL查询中。这是一种可接受的方式吗? 最佳答案 您还可以让IN子句获取查询的结果,例如:SELECT*FROMtable1WHEREtable1.idIN(SELECTidfromtable2)这样,您不需要生成包含所有可能值的文本字符串。在mysql中,您应该能够在IN子句中放入任意数量的值,仅受“max_al

python - 类型错误 : not all arguments converted during string formatting

我在将CSV文件加载到mysql数据库时遇到了一些问题。这是我的代码:forqincsvReader:name,price,LastUpdate,today=qco.execute("""INSERTINTOfundata(name,price,LastUpdate)VALUES(name,price,LastUpdate);""",q)我收到一条错误消息:TypeError:notallargumentsconvertedduringstringformatting。名称列是一个字符串,价格是一个float,LastUpdate是一个日期。我读了一点,看到一些脚本将值包装在%(val

PHP PDO 异常 : "SQLSTATE[HY093]: Invalid parameter number"

当我尝试运行以下函数时出现错误“SQLSTATE[HY093]:参数编号无效”:functionadd_persist($db,$user_id){$hash=md5("per11".$user_id."sist11".time());$future=time()+(60*60*24*14);$sql="INSERTINTOpersist(user_id,hash,expire)VALUES(:user_id,:hash,:expire)ONDUPLICATEKEYUPDATEhash=:hash";$stm=$db->prepare($sql);$stm->execute(array

c# - Xamarin Android 构建失败 "Invalid value for outputAssembly"

几天前,我的解决方案似乎运行良好,但今天突然间,Android项目无法构建。我没有收到错误,但确实得到以下输出:1>Buildstarted.1>Project"MyApp.Android.csproj"(Installtarget(s)):1>Project"MyApp.csproj"(GetTargetFrameworkstarget(s)):1>Donebuildingproject"MyApp.csproj".1>Project"MyApp.csproj"(GetTargetFrameworkstarget(s)):1>Donebuildingproject"MyApp.csp