我习惯于将几乎所有的类变量设为私有(private),并创建“包装器”函数来获取/设置它们:classSomething{private$var;functiongetVar(){$return$this->var;}}$smth=newSomething();echo$smth->getVar();我看到很多人都这样做,所以我最终也这样做了:)与以下相比,以这种方式使用它们是否有任何优势:classSomething{public$var;}$smth=newSomething();echp$smth->var;?我知道private意味着你不能在类外直接访问它们,但对我来说,变量是
所以我有两个这样的类:classfoo{/*codehere*/}$foo=newfoo();classbar{global$foo;publicfunctionbar(){echo$foo->something();}}我想在所有方法bar中访问foo的方法,而不在bar中的每个方法中声明它,如下所示:classbar{publicfunctionbar(){global$foo;echo$foo->something();}publicfunctionbarMethod(){global$foo;echo$foo->somethingElse();}/*etc*/}我也不想延长它。
我正在尝试将变量从一个View传递到Controller,再传递到另一个View。我没有收到任何错误,但是当它到达最后一个View时,它没有像预期的那样显示变量。在第一个View中,我只是得到一个名字。{{Form::open(array('route'=>'form','method'=>'post'))}}{{$name=Form::text('name')}}{{Form::submit('Go!')}}{{Form::close()}}这是我的HomeController.php。publicfunctionview1(){returnView::make('stuff');}
我有一个php脚本,它获取一个$_POST来决定返回哪个数组。例如:$n=$_POST['n'];//1,2or3$a1=array('something','somethingelse','anotherthing');$a2=array('something2','somethingelse2','anotherthing2');$a3=array('something3','somethingelse3','anotherthing3');现在我想获取对应于$n值的数组,比方说"2"。我怎么说echo$a。$n获取$a2谢谢。 最佳答案
执行以下操作是否更好?如果不是,其中一个比另一个快吗?unset($variable);或做$variable=''; 最佳答案 他们会做一些稍微不同的事情:unset将从符号表中删除变量并将内容的引用计数减1。之后对变量的引用将触发通知(“undefinedvariable”)。(请注意,对象可以通过实现__unset()来覆盖其属性的默认取消设置行为)。设置为空字符串会将内容的引用计数减1,将内容设置为长度为0的字符串,但该符号仍会保留在符号表中,您仍然可以引用该变量.(注意,对象可以通过实现__set()来覆盖其属性的默认赋值
获取一些包含PHP样式变量的纯文本(不是PHP代码),然后代入变量值的最佳方法是什么。这有点难以描述,所以这里有一个例子。//--myFile.txt--Maryhadalittle$pet.//--parser.php--$pet="lamb";//openmyFile.txtandtransformitsuchthat...$newContents="Maryhadalittlelamb.";我一直在考虑使用正则表达式或eval(),但我不确定哪个最简单。此脚本只会在本地运行,因此任何关于安全问题和eval()的担忧都不适用(我认为?)。我还要补充一点,我可以使用get_defin
如何在不刷新页面的情况下将变量从jQuery传递到PHP?当我点击一个复选框时,我想将一个变量从jQuery传递到PHP。我也在使用formdialog。我的PHP代码"/>"?>我的javascript代码functioncountChecked(){varn=$("input:checked").length;varallVals=[];$('input:checkbox:checked').each(function(){allVals.push($(this).val());});$('.sel').text(allVals+'');$('.select1').val(allV
如果我有一个变量$num=50,我如何将数字1-50放入数组中? 最佳答案 看看range功能。$array=range(1,$num); 关于PHP:为范围创建数组,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/1775344/
我认为这一定是一个非常基本的问题,但我才刚刚开始。有人可以看看下面相同(?)代码的3个版本并说出有什么区别吗?在我正在处理的循环中,它们似乎都运行良好。应该使用哪个:$post->ID、$the_ID或get_the_id()?是否需要global$post;?global$post;$content=get_post_meta($post->ID,‘my_custom_field',true);echo$content;或$content=get_post_meta($the_ID,‘my_custom_field',true);echo$content;或$content=get_
我正在尝试在内容表中插入值。如果我在VALUES中没有PHP变量,它工作正常。当我将变量$type放在VALUES中时,这不起作用。我做错了什么?$type='testing';mysql_query("INSERTINTOcontents(type,reporter,description)VALUES($type,'john','whatever')"); 最佳答案 在任何MySQL语句中添加PHP变量的规则简单明了:1。使用准备好的语句此规则涵盖99%的查询,尤其是您的查询。任何表示SQL数据文字的变量(或者,简单地说-SQL