我今天升级到PHP 5.4,我收到一些奇怪的警告:
Warning: Illegal string offset 'quote1' in file.php on line 110
Warning: Illegal string offset 'quote1_title' in file.php on line 111
Run Code Online (Sandbox Code Playgroud)
这些行是代码的这一部分:
for($i = 0; $i < 3; $i++) {
$tmp_url = $meta['quote'. ($i+1)];
$tmp_title = $meta['quote' . ($i+1) .'_title'];
if(!empty($tmp_url) || !empty($tmp_title)) {
$quotes[$src_cnt] = array();
$quotes[$src_cnt]['url'] = $tmp_url;
$quotes[$src_cnt]['title'] = $tmp_title;
$src_cnt++;
}
}
Run Code Online (Sandbox Code Playgroud)
所以$tmp_url和$tmp_title行.
为什么我收到这个奇怪的警告,解决方案是什么?
更新:
此代码用作Wordpress插件.$ meta包括:
$meta = get_post_meta($post->ID,'_quote_source',TRUE);
Run Code Online (Sandbox Code Playgroud)
所以我怀疑只要引号字段为空,就会出现此警告.当字段为空时,有什么方法可以解决这个问题吗?
好的,请允许我解释一下.
这是HTML:
<ul class="children">
<li class="bypostauthor">
This image should have borders:
<img width="67" height="67" src="http://i.imgur.com/BRUVD7s.jpg">
<ul class="children">
<li>
This should NOT have borders:
<img width="67" height="67" src="http://i.imgur.com/BRUVD7s.jpg">
</li>
</ul>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
和CSS:
.bypostauthor img{
border:5px solid red;
}
Run Code Online (Sandbox Code Playgroud)
我想为列表类中的图像添加边框bypostauthor,而不是列表中的图像.
例如,请看这个小提琴.
不幸的是,我无法为图像本身添加一个唯一的类.仅限于父列表.
我有3个数值,我想找到最低值.所以我使用min(),像这样:
$last_activity = min($last_article, $last_comment, $last_video);
Run Code Online (Sandbox Code Playgroud)
min()如果变量值为0,是否可以排除变量?请注意,这三个变量是带有数字的简单字符串10,而不是数组......
我有一个看起来像这样的数组:
$array = array(
array(
"http://google.com",
"Google"
),
array(
"http://yahoo.com",
"Yahoo"
)
);
Run Code Online (Sandbox Code Playgroud)
循环使用它的最简单方法是什么.就像是:
foreach ($array as $arr) {
// help
}
Run Code Online (Sandbox Code Playgroud)
编辑:我如何定位键,例如,我想做:
foreach ($array as $arr) {
echo '<a href" $key1 ">';
echo ' $key2 </a>';
}
Run Code Online (Sandbox Code Playgroud) 我有一个像这样的多维数组:
// Create an empty array
$noti_log = array();
// Add first array within a multidimensional array
$noti_log = array(
array('hello world')
);
Run Code Online (Sandbox Code Playgroud)
然后,当我想在里面添加一个新数组时,我会:
$noti_log[] = array('Greetings');
Run Code Online (Sandbox Code Playgroud)
问题是每当我添加一个新数组时,它最终会在旧数组下面.相反,我希望新的阵列排在旧的阵列之上.
所以在这种情况下,array('Greetings')应该在array('hello world')... 之上
如何添加最顶层的新阵列?
我有一个链接:
<a href="javascript:void(0)" class="lorem hello"> link </a>
Run Code Online (Sandbox Code Playgroud)
我有两个不同的onclick函数设置为这两个类:
jQuery(".lorem").each(function(){
this.onclick = function() {
// stuff
}
});
Run Code Online (Sandbox Code Playgroud)
和
jQuery(".hello").each(function(){
this.onclick = function() {
// stuff
}
});
Run Code Online (Sandbox Code Playgroud)
这会阻止顶部工作.为什么?如何让这两个功能在分离时工作?
我有一个菜单,用户单击链接并通过.addClass( "show-nav" ).
这是带有 JS 代码的jsFiddle:
jQuery(".nav-js-trigger").each(function(){
this.onclick = function() {
var hasClass;
hasClass = jQuery(this).next().hasClass( "show-nav" );
jQuery('.show-nav').removeClass('show-nav');
if (hasClass === false) {
jQuery(this).next().addClass( "show-nav" );
}
}
});
Run Code Online (Sandbox Code Playgroud)
show-nav如果用户在带有 class 的 div之外单击,我想删除该类show-nav。我该怎么做呢?
我已经看到了e.targetdiv ID 但没有看到类的例子,尤其是这样的场景。
我有以下preg_replace()功能定位链接:
$link = preg_replace(
"#http://([\S]+?)#Uis", '<a href="http://\\1">(link)</a>',
$link
);
Run Code Online (Sandbox Code Playgroud)
它适用于http链接,但显然没有https链接.如何调整它以便它也适用于https链接.
我有一个固定宽度的960px容器,我正在调整我的设计,以适应各种屏幕分辨率.在容器中,我有一些DIV使用宽度%和最小宽度的浮动,如:
width:80%;
min-width:200px;
Run Code Online (Sandbox Code Playgroud)
这里的问题是DIVs不是水平排列的; 他们最终落在彼此之下.以前,我DIV的设定宽度(我现在更改为最小宽度).
我目前如何形成DIV的一个例子:
容器:
width: 830px;
float: left;
Run Code Online (Sandbox Code Playgroud)
1 - 科拉姆:
width:100%;
min-width: 200px;
float: left;
Run Code Online (Sandbox Code Playgroud)
第二,科拉姆:
width:100%;
min-width: 200px;
float: left;
Run Code Online (Sandbox Code Playgroud)
第三,科拉姆:
width:100%;
min-width: 200px;
float: left;
Run Code Online (Sandbox Code Playgroud)
等等
在此示例中,1st-colum DIV覆盖容器的整个宽度并向下推动其他DIV.
下面的HTML示例:
<div id="container">
<div id="1stcolum">Hello world</div>
<div id="2ndcolum">Hello world</div>
<div id="3rdcolum">Hello world</div>
</div>
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,HTML中也没有任何花哨的东西.
这段代码:
$current_user = get_currentuseinfo();
foreach ($alleds as $ed) {
$checked = (in_array($ed->ID,(array)$currenteds)) ? ' checked="checked"' : '';
$disabled = (!current_user_can('administrator') && $current_user->ID !== $ed->ID) ? ' disabled="disabled" : '';
echo '<input type="checkbox" name="currenteds[]" value="' . $ed->ID . '"' .$checked . '" '.$disabled.' /><label for="ratings[]">'.$ed->user_nicename.'</label>';
}
Run Code Online (Sandbox Code Playgroud)
给我这个错误:
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING
Run Code Online (Sandbox Code Playgroud)
现在,我一直在努力解决为什么我收到这个错误,但我无法弄明白.问题可能就echo在线上.你知道问题是什么以及我如何解决它?