是否有相反的PHP函数__set_state()样__get_state()?而且我不是指__sleep()序列化.我想要一个简单的函数,var_export()在对象上调用后调用,但在var_export()获取数据之前,我可以在每个对象上选择要导出的数据.我知道有一种方法可以实现这个, 但是有更简单的方法吗?__get()并且debug_backtrace()只有在var_export()对象上调用时才修改数据.
编辑:有没有办法跟来实现这个__get()和debug_backtrace()修改数据,只有当var_export()被称为对象,因为__get()不叫上var_export().
方案:
<?php
/*
* @author Christian Mayer <http://fox21.at>
* @link http://stackoverflow.com/q/21762276/823644
* @link https://eval.in/163041
* @link https://eval.in/163462
* @link https://eval.in/163909
* @link https://gist.github.com/TheFox/49ff6903da287c30e72f
*/
interface Exportable{
public function __get_state();
}
function unset_with_get_state($expression){
$before = clone $expression;
$classVars = array_keys(get_class_vars(get_class($before)));
foreach(array_diff($classVars, $before->__get_state()) as $var){
unset($before->$var);
}
return $before;
} …Run Code Online (Sandbox Code Playgroud) 我<textarea>在<ul>.
<ul id="content">
<li id="bc1"><textarea id="text1" class="blockcontent"></textarea></li>
<li id="bc2"><textarea id="text2" class="blockcontent"></textarea></li>
<li id="bc3"><textarea id="text3" class="blockcontent"></textarea></li>
</ul>
Run Code Online (Sandbox Code Playgroud)
“块内容”将使用$('.blockcontent').tinymce({...});.
如果我在#bc1 之后插入#bc3$('#bc3').insertAfter($('#bc1'));内容将被删除。#text3 文本区域的内容不再可用。它消失了。如何解决这个问题?
我还尝试克隆 #bc3 $('#bc3').clone(true, true),在 #bc1 之后插入克隆并删除原始的 #bc3。为了修复“jQuery Input Clone Bug”,我使用了jquery.fix.clone jQuery plugin。但是 clone 方法也有与 insertAfter 方法相同的问题。也许 insertAfter 也做同样的事情:克隆和删除。不知道,随便。如果我首先删除原始文件然后插入克隆,则 TinyMCE 在克隆中不可用,但克隆 textarea 的内容可用。如果我首先插入克隆然后删除原始内容,则 TinyMCE 可用但原始内容不可用。
溴
我有一个简单的Bash脚本:
#!/usr/bin/env bash
read X
echo "X=$X"
Run Code Online (Sandbox Code Playgroud)
当我执行它时,./myscript.sh它工作.但是当我执行它时cat myscript.sh | bash,实际上它会echo "X=$X"进入$X.
所以这个脚本打印Hello World执行cat myscript.sh | bash:
#!/usr/bin/env bash
read X
hello world
echo "$X"
Run Code Online (Sandbox Code Playgroud)
cat myscript.sh | bash什么好处?为什么不这样做就像我执行它一样./myscript.sh?我有以下代码
<?php
$f = 'exit';
print "function '$f' \n";
$f();
print "end \n";
?>
Run Code Online (Sandbox Code Playgroud)
产生此错误消息:
Fatal error: Call to undefined function exit()
为什么找不到PHP没有exit()函数?如果我更换$f();了exit();它的工作找到.
BR