如果我有这样的功能:
function ($form, $db) {
$v = count($a);
}
function ($form, $db);
和此代码在同一个文件中
<script type="text/javascript">
$(document).ready(function() {
for ($i=0; $i< <?php echo $v-1; ?>; $i++) {//here
}
如何访问变量$v
?我已经知道全局变量通常是一种不好的做法,那么替代方案是什么呢?
感谢
答案 0 :(得分:2)
使用return $v
:
function ($form, $db) {
$v = count($a);
return $v;
}
<script type="text/javascript">
$(document).ready(function() {
for ($i=0; $i< <?php echo function( $form , $db )-1; ?>; $i++) {//here
}
答案 1 :(得分:1)
使用函数返回在全局范围内设置$ v的值。然后变量将在函数外部访问。
<?php
function ttt($form, $db)
{
return count($db);
}
$v = ttt($form, $db);
现在可以通过全球范围访问$ v。
另外,请注意javascript变量不使用$前缀,所以$ i需要只是我 ...除非我在那里遗漏了一些东西。
答案 2 :(得分:0)
使用全局变量;只是给它一个比$v
更具描述性的名称,这样就不会有与其他东西冲突的危险。
答案 3 :(得分:0)
基本return
怎么样?
function name($form, $db) {
$v = count($a);
return $v;
}
$v = name($form, $db);
答案 4 :(得分:0)
使用函数本身,给它起一个名字并使用像这样的返回值
function counter($form, $db) {
$v = count($a);
return $v;
}
并在脚本文件中以这种方式调用函数
<script type="text/javascript">
$(document).ready(function() {
for ($i=0; $i< <?php echo ($this->counter())-1; ?>; $i++) {//here
}
我希望它有所帮助
答案 5 :(得分:0)
使用类来声明全局变量,以便为它们提供上下文
示例:
class Config {
public static $v;
}
然后你可以使用Config :: $ v = count(a);
如果您有更多全局变量(如某些相互关联的配置参数),并且您需要在整个应用程序中读取和写入它们,这将非常有用。
如果不是这种情况,这只是一个单一的案例,那么你应该考虑使用返回值。